发博文
chinadns

http://blog.chinaunix.net/space.php?uid=283736

蛋,是不能这样扯的!   
个人资料
  • 博客访问:256290
  • 博文数量:67
  • 博客积分:5060
  • 博客等级:大校
  • 注册时间:2006-03-23 17:30:54
订阅我的博客
  • 订阅
  • 订阅到鲜果
  • 订阅到抓虾
  • 订阅到Google
字体大小: 博文
分类: AIX

  以前一直用bindprocessor -q来查看系统中有几个可用的CPU,今天man了一下bindprocessor
发现这个命令是用来绑定进程于CPU的,这样说把,如果你想使用第3个CPU执行该进程,就可以运行以下的命令
bindprocessor pid 2   2为使用bindprocessor -q输出的序号
则在进程(pid)的生命周期中,它将使用第3个cpu来执行
可以在进程的执行期间使用sar -P 命令查看 sar -P 0,1,2 2 10将查看0 1 2 这3个cpu在20秒钟内的执行情况,有兴趣的可以玩玩,dd一个1g的空文件,然后绑定pid到process n去,就可以查看到了
  要注意到的是,man里写的很清楚,bind的是thread,想了解的可以去man下
  另外,现在P5的机器有了smt技术,叫什么同步多线程,一个物理CPU上可以同时跑两个线程,但是要求是power5的硬件和5.3的系统,比如1个4c的p550,使用prtconf 可以看到4个CPU,如果smt未启用的话,则bindprocessor -q只能看到0 1 2 3,如果启用smt的话,prtconf还是4个,但bindprocessor -q 就是 0 1 2 3 4 5 6 7了,8个cpu core了
  可以使用smtctl命令查看是否启用了smt功能,还是那句话,具体怎么用,man一man

亲,您还没有登录,请[登录][注册]后再进行评论