cgroup是linux用來限制program使用Computer resource的一種方法
也是Docker的基礎
首先先安裝cgroup
1 | $ sudo apt install cgroup-bin |
不用看也知道他絕對吃滿cpu resource
所以該怎麼限制,例如只讓他吃20%的CPU
先建立cgroup的群組
1 | $ cd /sys/fs/cgroup/cpu # 管理CPU資源的地方 |
接著把我們程式限制的規則加入群組 以下動作需要root權限,sudo無法執行
1 | $ echo 20000 > calm/cpu.cfs_quota_us # 預設值是100000,20000正好是20% |
接著我們就能看到程式CPU使用率就只剩20%了
Another method
也可以用自定義規則的方式
1 | $ sudo cgcreate -g cpu:calm # 一樣是建立 cpu calm |
如果要執行程式的話
1 | $ sudo cgexec -g cpu:calm python busy.py |
跟上面有同樣的效果