使用cgroup绑定进程到指定核

cgcreate -g cpuset:/test
cgset -r cpuset.cpus=0 test
cgset -r cpuset.mems=0 test    #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目录

猜你喜欢

转载自www.cnblogs.com/stellar/p/9956836.html