Centos 调优 CPU优化
时间:2014-02-21 13:29 来源:www.it.net.cn 作者:IT网
1 查看L1,L2...
dmesg
x86info -c (yum install x86info -y)
2 命中率,丢失率查看:
valgrind --tool=caohegrind 命令
3 查看进程优先级(一般默认为0)
chrt -p 29022(进程号)
top
三种优先级:SCHED_RR 1~99 调整方法:chrt -r 50 命令
SCHED_FIFO 1~99 调整方法:chrt -f 50 命令
SCHED_OTHER 100~139 (调整时的值为-20~19)调整方法:
nice -n -18 命令
renice -18 -p 312(进程号)
4 平均负载率查看
sar -q 1 2 (每隔一秒显示一次,共显示两次)
top
uptime
5 使用率查看
mpstat
sar -P ALL 1 2
iostat -c 1 2
more /proc/stat
6 时钟频率 (xen上不可用)
tick_divider= (在/etc/grub.conf中kernel那行添加)
2 (=500Hz)
4 (=250Hz)
5 (=200Hz)
8 (=125Hz)
10 (=100Hz)
tick_divider值越小 cpu消耗就高,性能就低,计时器准确度高
tick_divider值越大 cpu消耗就低,性能就高,计时器准确度低
7 cpu频率电压
/etc/init.d/cpuspeed 此进程可自动调节cpu频率电压的值
/etc/sysconfig/cpuspeed (此可手动配置cpu频率电压的值)
8 IRQ balancing
此机制可将进程按一定方法分配给不同cpu执行(默认每10秒分配一次)
若想自己分配cpu任务进程:chkconfig irqbalance off (将IRQ balancing 关闭)
ls /proc/irq (查看当前有的IRQ中断)
1 2 10 。。。。
ls /proc/irq/1/
i8042 smp_affinity
cat smp_affinity
00000001 (此为cpu编号)
echo 00000002 > /proc/irq/1/smp_affinity
9 将进程分配给cpu
taskset -p 0x00001 1 (将进程号为1的进程分配给0x00001cpu)
10 制定开机后运行哪几个cpu
vim /etc/grub.conf
isolcpus=0,1,2...
11 查看cpu与IRQ
cat /proc/cpuinfo
cat /proc/interrupt
12 关闭cpu(无法关闭开机用cpu)
echo 0 > /sys/devices/system/cpu/cpu1/online (关闭cpu1)
echo 1 > /sys/devices/system/cpu/cpu1/replaceable/online (开启cpu1)
13 查看进程取得哪些资源
cat /proc/3213/status
14 将cpu分组(默认组为/)
例(建立 /cpusets cpu组)
mkdir /cpusets
grep cpu /proc/filesystems
vim /etc/fstab
mount -t cpuset nodev /cpusets/
mount -a
ls /cpusets/
.....cpus.....mem....tasks...
echo 1 > /cpusets/cpus (为/cpusets分配cpu)
echo 0 > /cpusets/mems (为/cpusets分配mem)
echo 3132 > /cpusets/tasks (进程号为3132的进程绑到cpusets组)
cat /proc/3132/cpuset
/cpusets (默认为/)
(/cpusets/cpu_exclusive 此中的cpu只能在此cpu组运行)
(/cpusets/notify_on_release 自动清理cpu组缓存开关) (责任编辑:IT)
1 查看L1,L2... dmesg x86info -c (yum install x86info -y) 2 命中率,丢失率查看: valgrind --tool=caohegrind 命令 3 查看进程优先级(一般默认为0) chrt -p 29022(进程号) top 三种优先级:SCHED_RR 1~99 调整方法:chrt -r 50 命令 SCHED_FIFO 1~99 调整方法:chrt -f 50 命令 SCHED_OTHER 100~139 (调整时的值为-20~19)调整方法: nice -n -18 命令 renice -18 -p 312(进程号) 4 平均负载率查看 sar -q 1 2 (每隔一秒显示一次,共显示两次) top uptime 5 使用率查看 mpstat sar -P ALL 1 2 iostat -c 1 2 more /proc/stat 6 时钟频率 (xen上不可用) tick_divider= (在/etc/grub.conf中kernel那行添加) 2 (=500Hz) 4 (=250Hz) 5 (=200Hz) 8 (=125Hz) 10 (=100Hz) tick_divider值越小 cpu消耗就高,性能就低,计时器准确度高 tick_divider值越大 cpu消耗就低,性能就高,计时器准确度低 7 cpu频率电压 /etc/init.d/cpuspeed 此进程可自动调节cpu频率电压的值 /etc/sysconfig/cpuspeed (此可手动配置cpu频率电压的值) 8 IRQ balancing 此机制可将进程按一定方法分配给不同cpu执行(默认每10秒分配一次) 若想自己分配cpu任务进程:chkconfig irqbalance off (将IRQ balancing 关闭) ls /proc/irq (查看当前有的IRQ中断) 1 2 10 。。。。 ls /proc/irq/1/ i8042 smp_affinity cat smp_affinity 00000001 (此为cpu编号) echo 00000002 > /proc/irq/1/smp_affinity 9 将进程分配给cpu taskset -p 0x00001 1 (将进程号为1的进程分配给0x00001cpu) 10 制定开机后运行哪几个cpu vim /etc/grub.conf isolcpus=0,1,2... 11 查看cpu与IRQ cat /proc/cpuinfo cat /proc/interrupt 12 关闭cpu(无法关闭开机用cpu) echo 0 > /sys/devices/system/cpu/cpu1/online (关闭cpu1) echo 1 > /sys/devices/system/cpu/cpu1/replaceable/online (开启cpu1) 13 查看进程取得哪些资源 cat /proc/3213/status 14 将cpu分组(默认组为/) 例(建立 /cpusets cpu组) mkdir /cpusets grep cpu /proc/filesystems vim /etc/fstab mount -t cpuset nodev /cpusets/ mount -a ls /cpusets/ .....cpus.....mem....tasks... echo 1 > /cpusets/cpus (为/cpusets分配cpu) echo 0 > /cpusets/mems (为/cpusets分配mem) echo 3132 > /cpusets/tasks (进程号为3132的进程绑到cpusets组) cat /proc/3132/cpuset /cpusets (默认为/) (/cpusets/cpu_exclusive 此中的cpu只能在此cpu组运行) (/cpusets/notify_on_release 自动清理cpu组缓存开关) (责任编辑:IT) |