首页 > 系统服务 > 详细

使用taskset命令来限制进程的CPU

时间:2018-01-25 10:10:36      阅读:272      评论:0      收藏:0      [点我收藏+]

常常感觉系统资源不够用,一台机子上跑了不下3个比较重要的服务,但是每天我们还要在上面进行个备份压缩等处理,网络长时间传输,这在就很影响本就不够用的系统资源;

      这个时候我们就可以把一些不太重要的比如copy/备份/同步等工作限定在一颗cpu上,或者是多核的cpu的一颗核心上进行处理,虽然这不一定是最有效的方法,但可以最大程度上利用了有效资源,降低那些不太重要的进程占用cpu资源;

      taskset就可以帮我们完成这项工作,而且操作非常简单;

      该工具系统默认安装,rpm包名util-linux

      借助一个例子说明,借助以前写过的一个消耗CPU的脚本 原]消耗CPU资源的shell脚本 ,将一台16个CPU的机器上其中4个CPU的资源耗尽:

技术分享图片

      使用 top 命令能看到4颗CPU跑满的效果:

技术分享图片      现在可以使用 taskset 命令调整这些进程所使用的CPU了:

taskset -cp 1  25718
taskset -cp 3  25720
taskset -cp 5  25722
taskset -cp 7  25724

      在top中再看看效果:

技术分享图片       哈哈,CPU的使用得到调配了,同样我们可以使某个进程仅使用其中几个CPU:

taskset -cp 1,2  25718

      更详细的信息可以用 man taskset 查看。

使用taskset命令来限制进程的CPU

原文:https://www.cnblogs.com/xiaoleiel/p/8349663.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!