UCLAMPSET(1) دستورات کاربری UCLAMPSET(1)

uclampset - تنظیم و مشاهده ویژگی‌های محدودسازی بهره‌وری پردازنده (Utilization Clamping)

uclampset [options] [-m minimum] [-M maximum] -p PID

uclampset [options] [-m minimum] [-M maximum] command [argument...]

دستور uclampset ویژگی‌های محدودسازی بهره‌وری (utilization clamping) یک PID موجود را تنظیم یا دریافت می‌کند، یا command را با ویژگی‌های داده‌شده اجرا می‌نماید.

محدودسازی بهره‌وری (Utilization clamping) قابلیتی است که در نسخه ۵.۳ اضافه شد. این ویژگی راهنمایی (hint) را در اختیار زمان‌بند قرار می‌دهد که نشان‌دهنده محدوده مجاز بهره‌وری است که تسک (وظیفه) باید در آن کار کند.

میزان بهره‌وری تسک بر انتخاب فرکانس و جای‌گذاری تسک (task placement) اثر می‌گذارد. در زمان نگارش این مستند، تنها ناظم فرکانس پردازنده (cpufreq governor) با نام schedutil پردازش راهنماهای util clamp را درک می‌کند. برای اطلاعات بیشتر در مورد پشتیبانی سایر ناظم‌های cpufreq به مستندات هسته خود مراجعه کنید.

اگر روی سامانه‌ای ناهمگون و نامتقارن مانند big.LITTLE آرم اجرا می‌کنید، محدودسازی بهره‌وری می‌تواند به سوگیری در جای‌گذاری تسک‌ها کمک کند. اگر تسک تقویت (boost) شود به طوری که مقدار util_min بالاتر از ظرفیت هسته‌های کوچک (little cores) باشد، زمان‌بند تمام تلاش خود را می‌کند تا آن را روی یک هسته بزرگ (big core) قرار دهد.

به طور مشابه، اگر util_max کوچکتر یا مساوی ظرفیت هسته‌های کوچک باشد، زمان‌بند همچنان می‌تواند تصمیم بگیرد که آن را در آنجا قرار دهد، حتی اگر بهره‌وری واقعی تسک در حداکثر مقدار باشد.

تنظیم مقدار uclamp_min یک تسک به مقداری غیرصفر، عملاً تسک را تقویت می‌کند چرا که هنگام اجرا همواره از این مقدار بهره‌وری شروع خواهد کرد.

با تنظیم مقدار uclamp_max یک تسک به کمتر از ۱۰۲۴، عملاً سقف عملکرد تسک محدود می‌شود، زیرا هنگام اجرا هرگز قادر نخواهد بود از این مقدار بهره‌وری فراتر رود.

محدوده کامل بهره‌وری به صورت [0:1024] است. مقدار ویژه -1 برای بازنشانی به مقدار پیش‌فرض سیستم استفاده می‌شود.

برای جزئیات بیشتر به آخرین مستندات هسته مراجعه کنید:

-m

تنظیم مقدار util_min.

-M

تنظیم مقدار util_max.

-a, --all-tasks

تنظیم یا دریافت ویژگی‌های محدودسازی بهره‌وری تمام وظایف (ریسه‌ها) برای یک PID مشخص.

-p, --pid

عملیات روی یک PID موجود و عدم راه‌اندازی وظیفه جدید.

-s, --system

تنظیم یا دریافت ویژگی‌های محدودسازی بهره‌وری در سطح کل سیستم.

-R, --reset-on-fork

تنظیم پرچم SCHED_FLAG_RESET_ON_FORK.

-v, --verbose

نمایش اطلاعات وضعیت با جزئیات.

-h, --help

نمایش متن راهنما و خروج.

-V, --version

نمایش نسخه و خروج.

رفتار پیش‌فرض، اجرای یک دستور جدید است:

uclampset [-m uclamp_min] [-M uclamp_max] command [arguments]

همچنین می‌توانید ویژگی‌های محدودسازی بهره‌وری یک وظیفه موجود را دریافت کنید:

uclampset -p PID

یا آن‌ها را تنظیم نمایید:

uclampset -p PID [-m uclamp_min] [-M uclamp_max]

یا ویژگی‌های سراسری سیستم را کنترل کنید:

uclampset -s [-m uclamp_min] [-M uclamp_max]

کاربر برای تغییر ویژگی‌های زمان‌بندی یک فرایند باید دارای قابلیت CAP_SYS_NICE باشد. هر کاربری می‌تواند اطلاعات زمان‌بندی را دریافت کند.

ویژگی‌های محدودسازی بهره‌وری در سطح سیستم برای کنترل محدوده مجاز قابل استفاده توسط تسک‌ها قرار داده شده‌اند. به طور پیش‌فرض، هر دو مقدار uclamp_min و uclamp_max روی ۱۰۲۴ تنظیم شده‌اند. این بدان معناست که کاربران می‌توانند مقادیر محدودسازی بهره‌وری را برای تسک‌های خود در تمام محدوده [0:1024] تنظیم کنند.

برای مثال:

uclampset -s -m 512 -M 700

از تقویت هر تسکی به بالاتر از ۵۱۲ جلوگیری خواهد کرد، و تمام تسک‌ها در سیستم تا بهره‌وری ۷۰۰ محدود می‌شوند؛ که عملاً حداکثر کارایی سیستم را به ۷۰۰ تقلیل می‌دهد.

برای رفتار دقیق مورد انتظار در آن نسخه هسته، به مستندات هسته خود مراجعه کنید.

Qais Yousef <qyousef@layalina.io>

nice(1), renice(1), taskset(1), sched(7)

برای توصیف طرح زمان‌بندی لینوکس به sched_setscheduler(2) و sched_setattr(2) مراجعه کنید.

برای گزارش باگ‌ها، از سامانه پیگیری مشکلات https://github.com/util-linux/util-linux/issues.

دستور uclampset بخشی از بسته util-linux است که می‌توان آن را از بایگانی هسته لینوکس https://www.kernel.org/pub/linux/utils/util-linux. دانلود کرد.

2026-09-02 util-linux 2.42.3