Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1021446
  • 博文数量: 361
  • 博客积分: 25
  • 博客等级: 民兵
  • 技术积分: 1759
  • 用 户 组: 普通用户
  • 注册时间: 2012-09-22 23:18
个人简介

学海无涯 个人blog lnmps.com 新站

文章分类

全部博文(361)

文章存档

2017年(1)

2015年(2)

2014年(55)

2013年(303)

分类: LINUX

2014-09-30 18:17:16

原文地址:一个均匀绑定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
阅读(929) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~