Ubuntu系统进程绑定CPU核
2015-08-21 20:19
330 查看
本文讲述如何在Ubuntu系统中,把指定的进程绑定到指定的CPU核运行。而通常是由操作系统负责管理进程和线程的调度,但是这种情况下是不清楚由哪个CPU核运行你的进程,因为操作系统的调度是基于资源的可用性进行判断的。
可以这样,把指定的CPU核绑定到你的进程。
下面用一个简单的例子来说明怎样做到。
如果未安装htop工具,执行下面的命令:
安装完成后,执行命令:
![](https://img-blog.csdn.net/20150804155315200)
上面的视图可以看到,CPU2的利用率达到100%,且这个进程有可能被分配到其它CPU核上运行,这个分配是不定的。
运行以下命令,把此Java进程(进程ID号为26502)永久的分配给5号CPU核(CPU核号从0开始计算,因此序号4指的是5号CPU核)
![](https://img-blog.csdn.net/20150804155229506)
从上面的视图中可以看到6号CPU核的利用率为100%。
可以这样,把指定的CPU核绑定到你的进程。
taskset -cp <CPU ID | CPU IDs> <Process ID>
下面用一个简单的例子来说明怎样做到。
1. CPU利用率达100%的样例代码:
class Test { public static void main(String args[]) { int i = 0; while (true) { i++; } } }
2. 编译并运行上面的样例代码
# javac Test.java # java Test & [1] 26531
3. 使用htop命令查看CPU的利用率
如果未安装htop工具,执行下面的命令:# apt-get install htop Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: htop 0 upgraded, 1 newly installed, 0 to remove and 41 not upgraded. Need to get 66.9 kB of archives. After this operation, 183 kB of additional disk space will be used. Get:1 http://mirrors.163.com/ubuntu/ precise/universe htop amd64 1.0.1-1 [66.9 kB] Fetched 66.9 kB in 0s (163 kB/s) Selecting previously unselected package htop. (Reading database ... 57100 files and directories currently installed.) Unpacking htop (from .../htop_1.0.1-1_amd64.deb) ... Processing triggers for man-db ... Setting up htop (1.0.1-1) ...
安装完成后,执行命令:
# htop
上面的视图可以看到,CPU2的利用率达到100%,且这个进程有可能被分配到其它CPU核上运行,这个分配是不定的。
4. 进程绑定CPU核
运行以下命令,把此Java进程(进程ID号为26502)永久的分配给5号CPU核(CPU核号从0开始计算,因此序号4指的是5号CPU核)# taskset -cp 5 26531 pid 26531's current affinity list: 0-7 pid 26531's new affinity list: 5
从上面的视图中可以看到6号CPU核的利用率为100%。
相关文章推荐
- 09-散列1. Hashing (25) -- 读题仔细
- treap 排序二叉树的模板
- 常用委托方法
- Hdu oj 2066 一个人的旅行
- git学习——<五>git分支
- 深入理解JavaScript系列(32):设计模式之观察者模式
- RAFT algorithm
- win7 vmware 装的64位 ubuntu 没有声音解决办法
- nyoj106背包问题【贪心算法】~
- 数个大数据O2O域名专场【欢迎拿走】
- Codeforces 478B.Random Teams
- hdu1102(最小生成树)
- 报错“计算机丢失tbb_debug.dll”问题解决办法
- HDOJ 5311 Hidden String(DFS不错的题)
- 深入理解JavaScript系列(31):设计模式之代理模式
- zoj--3878
- Vimium快捷键
- 23种设计模式(Java)
- C# Ditcionary
- ASP.NET 动态创建文本框 TextBox (add TextBox to page dynamically)