成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用 cpulimit 來釋放你的 CPU

系統 Linux
cpulimit 命令主要對長期運行的和 CPU 密集型的進程有用。編譯軟件和轉換視頻是長期運行的進程的常見例子,它們可以使計算機的 CPU 使用率達到最大。限制這類進程的 CPU 使用率將釋放出處理器時間,供計算機上可能運行的其他任務使用。

[[406445]]

在 Linux 系統上管理系統資源的推薦工具是 cgroups。雖然在可以調整的限制方面(CPU、內存、磁盤 I/O、網絡等)非常強大,但配置 cgroups 并不簡單。nice 命令從 1973 年起就可以使用了。但它只是調整在一個處理器上競爭時間的進程之間的調度優先級。nice 命令不會限制一個進程在單位時間內所能消耗的 CPU 周期的百分比。cpulimit 命令提供了兩個世界的最佳方案。它限制了一個進程在每單位時間內可以分配的 CPU 周期的百分比,而且相對容易調用。

cpulimit 命令主要對長期運行的和 CPU 密集型的進程有用。編譯軟件和轉換視頻是長期運行的進程的常見例子,它們可以使計算機的 CPU 使用率達到最大。限制這類進程的 CPU 使用率將釋放出處理器時間,供計算機上可能運行的其他任務使用。限制 CPU 密集型進程也將減少功耗及熱輸出,并可能減少系統的風扇噪音。限制一個進程的 CPU 使用率的代價是,它需要更多的時間來完成運行。

安裝 cpulimit

cpulimit 命令在默認的 Fedora Linux 倉庫中可用。運行下面的命令,在 Fedora Linux 系統上安裝 cpulimit

  1. $ sudo dnf install cpulimit

查看 cpulimit 的文檔

cpulimit 軟件包并沒有附帶的手冊頁。使用下面的命令來查看 cpulimit 的內置文檔。輸出結果在下面提供。但你可能需要在你自己的系統上運行該命令,以防止自本文編寫以來選項發生變化。

  1. $ cpulimit --help
  2. Usage: cpulimit [OPTIONS…] TARGET
  3. OPTIONS
  4. -l, --limit=N percentage of cpu allowed from 0 to 800 (required)
  5. -v, --verbose show control statistics
  6. -z, --lazy exit if there is no target process, or if it dies
  7. -i, --include-children limit also the children processes
  8. -h, --help display this help and exit
  9. TARGET must be exactly one of these:
  10. -p, --pid=N pid of the process (implies -z)
  11. -e, --exe=FILE name of the executable program file or path name
  12. COMMAND [ARGS] run this command and limit it (implies -z)

演示

為了演示 cpulimit 命令的使用方式,下面提供了一個精心設計的、計算量很大的 Python 腳本。該腳本首先在沒有限制的情況下運行,然后在限制為 50% 的情況下運行。它計算的是第 42 個 斐波那契數 的值。該腳本在這兩種情況下都作為 time 命令的子進程運行,以顯示計算答案所需的總時間。

  1. $ /bin/time -f '(computed in %e seconds)' /bin/python -c 'f = lambda n: n if n<2 else f(n-1)+f(n-2); print(f(42), end=" ")'
  2. 267914296 (computed in 51.80 seconds)
  3. $ /bin/cpulimit -i -l 50 /bin/time -f '(computed in %e seconds)' /bin/python -c 'f = lambda n: n if n<2 else f(n-1)+f(n-2); print(f(42), end=" ")'
  4. 267914296 (computed in 127.38 seconds)

當運行第一個版本的命令時,你可能會聽到電腦上的 CPU 風扇轉動起來。但在運行第二個版本時,你應該不會。第一個版本的命令不受 CPU 的限制,但它不應該導致你的電腦陷入癱瘓。它是以這樣一種方式編寫的:它最多只能使用一個 CPU 核心。大多數現代 PC 都有多個 CPU 核心,當其中一個 CPU 100% 繁忙時,可以毫無困難地同時運行其他任務。為了驗證第一條命令是否使你的一個處理器達到最大,在一個單獨的終端窗口中運行 top 命令并按下 1 鍵。要退出 top 命令可以按 Q 鍵。

設置高于 100% 的限制只對能夠進行 任務并行化 的程序有意義。對于這樣的程序,高于 100% 的增量代表一個 CPU 的全部利用率(200%=2 個CPU,300%=3 個CPU,等等)。

注意,在上面的例子中,-i 選項已經傳遞給 cpulimit 命令。這是必要的,因為要限制的命令不是 cpulimit 命令的直接子進程。相反,它是 time 命令的一個子進程,而后者又是 cpulimit 命令的一個子進程。如果沒有 -i 選項,cpulimit 將只限制 time 命令。

最后說明

如果你想限制一個從桌面圖標啟動的圖形程序,請將該程序的 .desktop 文件(通常位于 /usr/share/applications 目錄下)復制到你的 ~/.local/share/applications 目錄下,并相應修改 Exec 行。然后運行下面的命令來應用這些變化:

  1. $ update-desktop-database ~/.local/share/applications

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2014-12-01 13:44:03

cgroupscpulimitlinux

2017-02-14 08:33:48

CPULinux內核

2013-10-30 09:37:19

LinuxLinux命令

2016-10-12 13:37:09

LombokIDEidea

2014-11-05 20:05:46

dockerJenkins

2024-05-16 11:45:19

Rust項目代碼

2017-12-25 09:39:07

Linuxbashparallel

2012-07-26 09:10:31

PHP

2018-05-21 14:44:33

LinuxshellPython

2013-12-10 10:16:39

2020-07-06 11:32:50

HTTPHTTP Header開發者

2024-08-26 15:17:16

2021-01-04 13:25:10

Git開源工具

2016-03-18 09:44:05

隊列分析應用留存用戶行為

2021-02-24 14:00:42

LinuxChromebook谷歌

2018-04-02 10:28:10

iOSPWA蘋果

2020-11-15 18:00:49

開源可視化工具Python

2015-11-03 13:50:21

SlackDocker運維機器人

2013-07-09 17:21:53

VMware混合云

2011-03-31 14:21:42

保存數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人av片在线观看 | 成人一区精品 | 亚洲综合在线一区 | 欧美日韩成人在线 | 精品99在线| 中文字幕日韩av | 久久99精品久久久久久狂牛 | 亚洲一区二区在线免费观看 | 精品国产亚洲一区二区三区大结局 | 亚洲精品2区| 国产成人91视频 | 日韩精品一区二区三区视频播放 | 午夜播放器在线观看 | 丁香久久 | 国产高清在线精品一区二区三区 | 国产一级一级毛片 | 在线观看亚洲专区 | 亚洲免费人成在线视频观看 | 国产成人免费在线 | 免费高潮视频95在线观看网站 | 超碰人人人人 | 美女三区| 国产精品久久久久久久 | 99精品一区二区 | 亚洲综合资源 | 日本免费在线 | 羞羞的视频免费在线观看 | 日韩久久久久久久 | 日韩在线一区二区 | 亚洲精品乱码久久久久久按摩 | 欧美激情视频一区二区三区在线播放 | 国产无人区一区二区三区 | 日本成人福利视频 | 久久久青草婷婷精品综合日韩 | 久久最新| 亚洲不卡在线观看 | 毛片一区 | 亚洲高清一区二区三区 | 91成人午夜性a一级毛片 | 国产精品一区二区免费看 | 狠狠干天天干 |