首页 > 系统运维 > 设置linux进程优先级和CPU亲和性
您的足迹
  • 你没有浏览过任何文章或者你没有开启cookies。

设置linux进程优先级和CPU亲和性

有用的东西,先mark了。

进程cpu资源分配就是指进程的优先权(priority)。优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能。

一、先看系统进程:

PR 就是 Priority 的简写,而 NI 是 nice 的简写。这两个值决定了PR的值,PR越小,进程优先权就越高,就越“优先执行”。换算公式为:PR(new) = PR(old) + NI
—————————————————————————
二、修改进程优先级的命令主要有两个:nice,renice

1、一开始执行程序就指定nice值:nice
nice -n -5 /usr/local/mysql/bin/mysqld_safe &
linux nice 命令详解

功能说明:设置优先权。

语  法:nice [-n][–help][–version][执行指令]

补充说明:nice指令可以改变程序执行的优先权等级。

参  数:-n或-或–adjustment= 设置欲执行的指令的优先权等级。等级的范围从-20-19,其中-20最高,19最低,只有系统管理者可以设置负数的等级。
–help  在线帮助。
–version  显示版本信息。
—————————————————————————
2.1、调整已存在进程的nice:renice

renice -5 -p 5200
#PID为5200的进程nice设为-5
linux renice 命令详解

功能说明:调整优先权。

语  法:renice [优先等级][-g…][-p…][-u…]

补充说明:renice指令可重新调整程序执行的优先权等级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权。等级范围从-20–19,只有系统管理者可以改变其他用户程序的优先权,也仅有系统管理者可以设置负数等级。
参  数:
-g  使用程序群组名称,修改所有隶属于该程序群组的程序的优先权。
-p  改变该程序的优先权等级,此参数为预设值。
-u  指定用户名称,修改所有隶属于该用户的程序的优先权。

2.2、也可以用top命令更改已存在进程的nice:

top
#进入top后按“r”–>输入进程PID–>输入nice值
————————————————————————–
三、把进程运行到指定CPU(即修改进程的”CPU亲和性”):taskset
两个名词
SMP (Symmetrical Multi-Processing):指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。 [更多…]
CPU affinity:中文唤作“CPU亲和性”,是指在CMP架构下,能够将一个或多个进程绑定到一个或多个处理器上运行。[更多…]

请先确定你的cpu核心及命名(例如四个核心:0,1,2,3):cat /proc/cpuinfo

taskset -cp 1 5200
#把PID为5200的进程运行到CPU#1上
#也可以在启动进程时指定:
taskset -c 1 /etc/init.d/mysql start
linux taskset命令详解

SYNOPSIS
taskset [options] [mask | list ] [pid | command [arg]…]
OPTIONS
-p, –pid
operate on an existing PID and not launch a new task
-c, –cpu-list
specifiy a numerical list of processors instead of a bitmask.
The list may contain multiple items, separated by comma, and
ranges. For example, 0,5,7,9-11.
-h, –help
display usage information and exit
-V, –version
output version information and exit

来自:http://my.unix-center.net/~lishuai860113/?p=184
参考:http://www.ibm.com/developerworks/cn/linux/l-affinity.html


相关博文

  1. 还没有评论
评论提交中, 请稍候...

留言

可以使用的标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackbacks & Pingbacks ( 0 )
  1. 还没有 trackbacks
Feed