Cpu

測試CPU負載和程序優先級的程序

  • July 25, 2011

我正在對 Amazon EC2 實例進行一些測試,我們希望 CPU 始終保持在 80% 以上的繁忙狀態。

我有一個main需要以高優先級執行的程序,我想啟動另一個程序,最好是一些數學 C 程式碼或 bash 腳本,它將 CPU 載入到 80% 以上。

有哪些程序可用於此類任務,以及如何使我的程序以最高優先級執行。

PS:執行 Fedora。

在 shell 中以 100%(減去成本)佔用一個 CPU 很容易:

while true; do :; done

如果要減少負載,請引入睡眠。

i=0; while [ $i -ne 0 ] || sleep 0.001; do i=$(( (i+1) % 10000 )); done

調高或調低 10000 以獲得所需的負載。

調度優先級由 設置nice。您需要成為 root 才能設置高於預設值的優先級。請注意,消極的niceness 意味著高優先級(積極的niceness 意味著很好,即低優先級)。

nice -20 sh -c 'while …'

使用“nice”,您可以控制優先級。對於最高優先級(僅適用於 root):

nice -n -20 yourprogram

對於最低的:

nice -n 19 yourprogram

如果您還需要控制 IO,請使用 ionice。文件中的“man nice”和“man ionice”。

引用自:https://unix.stackexchange.com/questions/17391