硬件是ARM的板子,4核,系统为linux,有个内核线程(IPSEC)占用CPU过高,主要是处理报文。如何控制该内核线程的CPU使用率在某个百分比以下呢?
调整进程的 nice 值,使其CPU使用绿维持在你想要的水平,
使用cgroups可以限制进程使用的硬件资源,包括cpu使用率
CPU使用时间(使用率)限制
mkdir /cgroup/cpu/limit#创建CPU控制组limit,或cgcreate -g cpu:/limit
echo 50000> /cgroup/cpu/limit/cpu.cfs_quota_us #将cpu.cfs_quota_us设置为50000,相当于cpu.cfs_period_us值100000的50%,或cgset-r cpu.cfs_quota_us=50000 limit
echo $pid> /cgroup/cpu/limit/tasks #将需要限制CPU使用率的的进程ID写到tasks中,或cgclassify -g cpu:limit $pid
echo ‘’ >/cgroup/cpu/limit/tasks #取消限制
rmdir/cgroup/cpu/limit #删除CPU控制组limit,或cgdelete cpu:/limit