Linux

linux & IT …

اعمال محدودیت در میزان مصرف پردازنده توسط برنامه‌های نصب شده روی لینوکس(اوبونتو، دبیان، فدورا)


به بزرگواری خودتون این تیترای زشت و زمخت رو ببخشید. حقیقت اینه که من اصلا مهارتی در انتخاب یک تیتر مناسب مث همونایی که تو روزنامه ها و وبلاگای معروف مي بینیم ، ندارم! برای اینکه خیلی دور نشیم از اصل ماجرا موضوع از این قراره که هر برنامه ای که شما اون رو اجرا می کنید،‌ یه میزانی از پردازشگر رو به خودش اختصاص می‌ده. حالا این میزان چقدره!؟ این میزان به خود برنامه ربط داره! و سیستم عامل در حالت کلی جلوی برنامه رو نمی‌گیره! یعنی یه برنامه ممکنه ۳۰ درصد اول کار استفاده کنه و بعد وسطاش به ۴۰ درصد هم برسه. حالا کاری که ما می‌خوایم بکنیم ایجاد محدودیت روی این دست از برنامه‌هاست. یعنی شما هر برنامه و یا هر پروسه ای که در حال اجرا شدن هست رو می‌تونید براش یک سقفی تعیین کنید. معمولا اینکار  برای برنامه‌هایی که از تمام پردازشگر استفاده می‌کنند انجام می شه تا آدم بتونه به کارای دیگش هم برسه. مثلا شما در نظر بگیرید دارید یه انیمیشن یک ساعتی رو رندر می‌کنید! خوب اگه حالت عادی باشه باید یه شب تا صب رو به کار رندر اختصاص بدید.  برای اینکار ما باید از  برنامه (cpu limit) استفاده کنیم.

دانلود و نصب برنامه

اوبونتو

$ sudo apt-get install cpulimit

تیک مخازن یونیورسال اوبونتو رو بزنید.

نصب برنامه در بقیه توزیع‌ها

$ wget http://downloads.sourceforge.net/cpulimit/cpulimit-1.1.tar.gz
$ tar-zxf cpulimit * xxx.tar.gz
$ cd cpulimit-xxx
$ make

طرز استفاده

برای استفاده از برنامه، شما باید اسم برنامه و یا پروسه آی دی آن برنامه رو داشته باشید تا بتوانید محدودیت خود را بر روی برنامه اعمال کنید.

مثال

اگر شما می‌خواید سقف فایرفاکس در میزان مصرف پردازشگر سی درصد باشه باید از دستور زیر استفاده کنید

cpulimit firefox-e-l 30

و یا می‌تونید برای پروسه‌ای به شماره ۳۶۷۵ تا سقف ۴۰ درصد محدودیت بزارید.

cpulimit-p 3675-l 40

و یا به جای شماره پروسه، می‌تونید مسیر برنامه رو هم بدید.

cpulimit-P / l usr/lib/firefox-3.0.11/firefox-30

و یا می تونید برای اسکریپت اجرایی از طریق اسم و یا مسیر اون ایجاد محدودیت کنید (مثلا اسکریپت bigloop)

cpulimit –exe bigloop –limit 40
cpulimit –exe /usr/local/bin/bigloop –limit 40

اون P  مخفف پروسس آی‌دی و l هم  مخفف لیمیت(محدودیت) و e هم مخفف اجرایی (exe)‌هست.

cpulimit –pid 2960 –limit 55

در نسخه توسعه‌ای برنامه شما از دستور زیر هم می‌تونید استفاده کنید.

cpulimit –limit 40 /etc/rc.d/rc.boinc start

توجه

اگر پردازشگر شما تک هسته‌ای هست که می تونید بین ۰ تا ۱۰۰ عدد بدید و ۵۰ درصد یعنی برنامه ، در هر ثانیه بیشتر از ۵۰۰ میلی ثانیه از پردازشگر شما نمی‌تونه مصرف کنه! اما اگر شما پردازشگر ۴ هسته‌ای دارید، شما از بین صفر تا ۴۰۰ درصد مجاز به ایجاد محدودیت هستید.

سایت برنامه

منبع

تو این مدت یه  عید آمد و گذشت و به من یکی چندان خوش نگذشت! برای اینکه به شما بد نگذره این پوسته رو هم از من قبول کنید!‌ یک پوسته سیاه و آماده شده برای استفاده راحت در اوبونتو و دبیان به حجم تقریبی ۱۵ مگ که مناسب حال این روزای ماست.

Advertisements

3 پاسخ به “اعمال محدودیت در میزان مصرف پردازنده توسط برنامه‌های نصب شده روی لینوکس(اوبونتو، دبیان، فدورا)

  1. javad33 2009/07/24 در 6:05 ق.ظ.

    آقا نوید سلام.
    ممنون از این همه مطالبی که با این سرعت منتشر میکنی!
    تیتر و اینا رو بیخیال محتوا مهمه که خواننده جمع میکنه 🙂
    قلمت پرجوهر باد!

    • erghezi 2009/07/24 در 7:23 ق.ظ.

      سلام. نظر لطفته ( قلمت پر جوهر باد!)
      تیکه رو خوب اومدی(جمع کردن فله‌ای خواننده) :))
      سفر به خیر و خوشی که بود!؟‌این ماجرای آنفولانزا چی چی بود!؟ شما قرنطینه خوابیدین؟ 🙂

  2. یه‌انقلابی 2009/07/25 در 12:23 ق.ظ.

    با سلام
    احسنت به این تم
    یا علی

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌وارهٔ وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

عکس گوگل+

شما در حال بیان دیدگاه با حساب کاربری Google+ خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s

%d وب‌نوشت‌نویس این را دوست دارند: