使用cgroup繫結程序到指定核

2022-07-17 05:09:10 字數 773 閱讀 2889

cgcreate -g cpuset:/test

cgset -r cpuset.cpus=0test

cgset -r cpuset.mems=0test #mems必須設定

cgexec -g cpuset:/sunwg_g1 python test.py

注:1.

檢視linux文件發現cpuset子系統是有兩個引數是強制要求定義的,cpuset.cpus和cpuset.mems。

cpuset.cpus(強​​​制​​​)

指​​​定​​​允​​​許​​​這​​​個​​​ cgroup 中​​​任​​​務​​​訪​​​問​​​的​​​ cpu。​​​這​​​是​​​一​​​個​​​用​​​逗​​​號​​​分​​​開​​​的​​​列​​​表​​​,格​​​式​​​為​​​ ascii,使​​​用​​​小​​​橫​​​線​​​(」-」)代​​​表​​​範​​​圍​​​。​​

cpuset.mems(強​​​制​​​)

指​​​定​​​允​​​許​​​這​​​個​​​ cgroup 中​​​任​​​務​​​可​​​訪​​​問​​​的​​​內​​​存​​​節​​​點​​​。​​​這​​​是​​​一​​​個​​​用​​​逗​​​ 號​​​分​​​開​​​的​​​列​​​表​​​,格​​​式​​​為​​​ ascii,使​​​用​​​小​​​橫​​​線​​​(」-」)代​​​表​​​範​​​圍​​​。

2. 對於多執行緒的程式,該方法不生效

3. 配置完在/sys/fs/cgroup/cpuset目錄會出現test目錄

linux繫結程序到指定cpu

方法之一 top p pidof 程序名稱 方法之二 top p ps h o pid c 程序名稱 如果還要檢視此程序下的各執行緒,可用如下 top h p pidof process 我是分割線 top實時顯示程序在那個cpu上 1 top 2 按 1 實時顯示cpu資訊 3 按 f 進入顯示配...

windows下繫結執行緒(程序)到指定的CPU核心

乙個程式指定到單獨乙個cpu上執行會比不指定cpu執行時快。這中間主要有兩個原因 1 cpu切換時損耗的效能。2 intel的自動降頻技術和windows的機制衝突 windows有乙個功能是平衡負載,可以將乙個執行緒在不同時間分配到不同cpu,從而使得每乙個cpu不 過累 然而,inter又有乙個...

reparent指定程序到當前程序

作者 李先靜 今 天遇到乙個問題,需要監視某個應用程式的退出事件,並得到它的退出碼。waitpid只能監視子程序,對其它程序沒有效果,怎麼才能reparent乙個 程序呢?我在核心裡找了半天也沒有找到相應的系統呼叫,後來想到偵錯程式都可以,那一定有辦法。偵錯程式是用ptrace實現的,我試了一下,發...