PDA

View Full Version : ازاد کردن CPU



Keyone_razi
پنج شنبه 08 مرداد 1394, 18:58 عصر
سلام
یه مشکلی که تو هر برنامه نویسی و البته پایتون(که الان دارم کار میکنم) دارم، اینه که وقتی یه برنامه خیلی ساده، مثلا فرض کنید محاسبه فاکتوریل را داریم، و با اعداد خیلی بزرگ اجراش می کنیم، کل cpu اختصاص پیدا می کنه به پردازش برنامه و بعد سیستم گیر میکنه.
می خواستم ببینم راهی وجود داره که این اتفاق پیش نیاد؟
اصلا موضوعی که در این مورد بحث می کنه چیه؟

amirali0079
جمعه 09 مرداد 1394, 22:42 عصر
حالا اصلا این اعداد بزرگ یه چه کار میاد ؟ وقتی کاربردی نداره ماژولی چیزی هم نداره ! شما اصلا نمیتونی CPU رو آزاد کنی مگر اینکه task بقیه برنامه هارو ببندی

ولی میتونی بهینه سازی کنی برنامه ات رو معمولا برای استفاده کمتر از CPU در برنامه از یک delay خیلی کم استفاده میکنن مثلا یک حلقه بی نهایت با یک delay خیلی کم خیلی روان و خوب کار میکنه


import time

time.sleep(x)



x = زمان delay

n.nowroozi
شنبه 10 مرداد 1394, 07:05 صبح
سلام
یه مشکلی که تو هر برنامه نویسی و البته پایتون(که الان دارم کار میکنم) دارم، اینه که وقتی یه برنامه خیلی ساده، مثلا فرض کنید محاسبه فاکتوریل را داریم، و با اعداد خیلی بزرگ اجراش می کنیم، کل cpu اختصاص پیدا می کنه به پردازش برنامه و بعد سیستم گیر میکنه.
می خواستم ببینم راهی وجود داره که این اتفاق پیش نیاد؟
اصلا موضوعی که در این مورد بحث می کنه چیه؟
بله اگه سیستم عاملت یونیکس بیس هست میتونی از کتابخونه resource (http://pymotw.com/2/resource/) استفاده کنی. البته از کانتینرهای داکر هم میتونی استفاده کنی. یه کانتینر محدود میسازی و اپلیکیشنت رو روی اون ران میکنی