Linux 控制CPU资源使用
限制CPU的方式有以下几种:
1、taskset
2、cpulimit
一、taskset
-p,--pid 对一个已存在的pid进行操作
-c,--cpu-list 限定进程到指定的cpu上,可以指定多个,以逗号分隔,也可指定范围:1,2,5,6-8。
示例:
使用 taskset 将19041 绑定到 核1
[root@hankyoon ~]# taskset -pc 1 19041
pid 19041's current affinity list: 0,1
pid 19041's new affinity list: 1
二、cpulimit
参数详解:
使用方法:cpulimit [OPTIONS…])目标
选项
-l,——limit=N百分比的cpu允许从0到1600(必需)
-v,——verbose显示控制统计信息
-z,——惰性退出如果没有目标进程,或者如果它死了
-i,——include-children还限制子进程
-h,——help显示帮助并退出
TARGET必须恰好是以下其中之一:
-p,——pid=N进程的pid(暗示-z)
-e,——exe=FILE可执行程序文件名或路径名
命令[ARGS]运行此命令并限制它(暗示-z)
命令:
[root@hankyoon ~]# cpulimit -e mysqld -l 70 -z -v # 命令对mysqld进程进行限制
注意:
cpulimit 是限定某个进程的cpu使用率,而非像taskset 绑定某个进程到指定的cpu上面
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通