Chinaunix首页 | 论坛 | 博客
  • 博客访问: 51112
  • 博文数量: 16
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 112
  • 用 户 组: 普通用户
  • 注册时间: 2013-10-09 19:10
文章分类

全部博文(16)

文章存档

2015年(2)

2014年(3)

2013年(11)

我的朋友

分类: LINUX

2013-12-12 11:19:50

原文地址:一个均匀绑定cpu的shell 作者:raochaoxun

有时候,由于架构设计或其他业务本身特点原因,导致有些应用是由cpu很不均衡;处理集中在一个cpu是上;白白浪费其他CPU在睡觉。一个简单办法就是绑定到多个CPU;

绑定CPU是一个不错技巧,但是不是杀手锏,一般能提高10%性能;更好地办法是优化架构,对于网络处理性程序,绑定网卡中断更犀利。

这里分享一个小小的shell,绑定制定程序均匀负载到各个CPU上。


  1. #!/bin/sh

  2. pids=`/sbin/pidof $1`
  3. cpunum=`cat /proc/cpuinfo | grep processor | wc -l`

  4. cpuidx=0
  5. for pid in $pids
  6. do
  7.     /usr/bin/taskset -cp ${cpuidx} ${pid}
  8.     cpuidx=$(($cpuidx+1))
  9.     cpuidx=$(($cpuidx%$cpunum))
  10.     echo $cpuidx
  11. done

使用方法 $>  ./bindcpu2p.sh  progressname
阅读(1029) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~