在一个系统中有32个核心(每个cpus有16个核心),我想限制用户只使用4个核心(对这4个核心100%的使用)。根据手册,有两个内核参数:cpu.cfs_quota_us和cpu.cfs_period_us。
kernel.org 文档的一个例子是:
With 500ms period and 1000ms quota, the group
can get 2 CPUs worth of runtime every 500ms.
# echo 1000000 > cpu.cfs_quota_us /* quota = 1000ms */
# echo 500000 > cpu.cfs_period_us /* period = 500ms */我想知道那些ms是如何决定的?就我而言,我认为配额是32000000,期限是4000000。我说的对吗?etc/cgconfig.conf的内容如下:
group ansys {
cpu {
cpu.cfs_quota_us = 32000000;
cpu.cfs_period_us = 4000000;
}
memory {
memory.limit_in_bytes = 8000m;
}
}但这不管用!当我运行/etc.init.d.cgconfig start时,我得到一个错误,我得到这个错误:
Failed to parse /etc/cgconfig.conf or /etc/cgconfig.d
[FAILED]Starting cgconfig service: /sbin/cgconfigparser; error loading
/etc/cgconfig.conf: Failed to remove a non-empty group发布于 2016-09-06 10:48:10
查看cpuset cgroup/容器参数。它允许您将容器引脚到特定的cpu核心。在您的示例中,您只能将单个容器指定为核心0-3,并且不让其他容器在同一核心上执行,方法是允许每个容器具有100%的利用率的4个核心。
此外,与cpu (使用共享/配额)相比,cpuset是一种更有效的分发机制。
https://unix.stackexchange.com/questions/271443
复制相似问题