linux下让进程运行在指定的cpu上(二)
2010-06-23 14:39
357 查看
在SMP情况下,Linux调度器有负载均衡机制,将一个进程在不同CPU之间进行迁移。因此,一个进程运行在哪个CPU上是不确定的,但有时候为了测试数据方便,却有这样的需求,就是将某个进程绑定到一个CPU上运行。
怎么办呢?如果你有源代码,那么很简单,在代码里面加上sched_setaffinity()函数就可以了,但如果没有呢?
没关系,我们有秘密武器,那就是taskset命令。
该命令最简单的用法是:
taskset [mask] [command]
mask是CPU掩码,用16进制数表示,从低位起,为1的位表示该CPU上可以运行该进程。command是要运行的命令。
如taskset 0x00000033 /usr/bin/aaa表示运行/usr/bin/aaa这个进程,并且绑定在0,1,4,5号CPU上。
也许你觉得掩码不直观,没关系,可以使用-c参数,指定CPU的id列表:
taskset -c 0,1,4,5 /usr/bin/aaa
那么,如果是一个已经在运行的程序呢?也有办法,请出-p参数:
Taskset -pc 0,1,4,5 `pidof /usr/bin/aaa`
怎么办呢?如果你有源代码,那么很简单,在代码里面加上sched_setaffinity()函数就可以了,但如果没有呢?
没关系,我们有秘密武器,那就是taskset命令。
该命令最简单的用法是:
taskset [mask] [command]
mask是CPU掩码,用16进制数表示,从低位起,为1的位表示该CPU上可以运行该进程。command是要运行的命令。
如taskset 0x00000033 /usr/bin/aaa表示运行/usr/bin/aaa这个进程,并且绑定在0,1,4,5号CPU上。
也许你觉得掩码不直观,没关系,可以使用-c参数,指定CPU的id列表:
taskset -c 0,1,4,5 /usr/bin/aaa
那么,如果是一个已经在运行的程序呢?也有办法,请出-p参数:
Taskset -pc 0,1,4,5 `pidof /usr/bin/aaa`
相关文章推荐
- linux:如何指定进程运行的CPU
- linux下让进程运行在指定的cpu上
- linux:如何指定进程运行的CPU
- 在linux下查看指定进程的所运行的CPU核
- linux:如何指定进程运行的CPU
- linux 下进程和线程指定CPU运行
- linux下让进程运行在指定的cpu上
- Linux编程-让进程或线程运行在指定的CPU上
- linux下指定进程运行的CPU
- linux下让进程运行在指定的cpu上
- Linux 进程、线程运行在指定CPU核上
- linux下让进程运行在指定的cpu上(一)
- linux:如何指定进程运行的CPU
- 在linux下查看指定进程的所运行的CPU核
- 在linux下查看指定进程的所运行的CPU核
- 在linux下查看指定进程的所运行的CPU核
- 如何让进程运行在指定的cpu上
- cpustat:在 Linux 下根据运行的进程监控 CPU 使用率
- taskset: 让进程运行在指定的CPU
- Linux CPU affinity指定程序运行CU