查看: 571|回复: 0

[教程] linux下通过使用taskset命令来限制进程的CPU

[复制链接]

11

主题

0

回帖

33

积分

技术1级

金币
22
阅读权限
10
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-1-5
QQ
发表于 2009-1-29 23:18:21 | 显示全部楼层 |阅读模式
这个时候我们就可以把一些不太重要的比如copy/备份/同步等工作限定在一颗cpu上,或者是多核的cpu的一颗核心上进行处理,虽然这不一定是最有效的方法,但可以最大程度上利用了有效资源,降低那些不太重要的进程占用cpu资源;
      taskset就可以帮我们完成这项工作,而且操作非常简单;
      该工具系统默认安装,rpm包名util-linux
      借助一个例子说明,借助以前写过的一个消耗CPU的脚本 原]消耗CPU资源的shell脚本 ,将一台16个CPU的机器上其中4个CPU的资源耗尽:

      使用 top 命令能看到4颗CPU跑满的效果:
      现在可以使用 taskset 命令调整这些进程所使用的CPU了:
  1. taskset -cp 1  25718taskset -cp 3  25720taskset -cp 5  25722taskset -cp 7  25724
复制代码
     在top中再看看效果:
       哈哈,CPU的使用得到调配了,同样我们可以使某个进程仅使用其中几个CPU:
  1. taskset -cp 1,2  25718
复制代码
     更详细的信息可以用 man taskset 查看。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部