centos 7 cpu绑定+I/O 调度算法调优

centos 7 cpu绑定+I/O 调度算法调优

一、cpu绑定(CPU Affinity)
1、属性
什么是CPU Affinity? Affinity是进程的一个属性,这个属性指明了进程调度器能够把这个进程调度到哪些CPU上。
在Linux中,我们可以利用CPU affinity把一个或多个进程绑定到一个或多个CPU上,CPUAffinity分为2种,softaffinity和hardaffinity。softaffinity仅是一个建议,如果不可避免,调度器还是会把进程调度到其它的CPU上。hardaffinity是调度器必须遵守的规则。

为什么要进行CPU 的绑定:
1):增加CPU缓存率
	CPU之间是不共享缓存的,如果进程频繁的在各个CPU间进行切换,需要不断的使旧CPU的cache失效。如果进程只在某个CPU上执行,则不会出现失效的情况。
2)增加CPU缓存的命中率
	在多个线程操作的是相同的数据的情况下,如果把这些线程调度到一个处理器上,大大的增加了CPU缓存的命中率。但是可能会导致并发性能的降低。如果这些线程是串行的,则没有这个影响。
3)适合time-sensitive
	应用在real-time或time-sensitive应用中,我们可以把系统进程绑定到某些CPU上,把应用进程绑定到剩余的CPU上。典型的设置是,把应用绑定到某个CPU上,把其它所有的进程绑定到其它的CPU上。

2、示例

[root@compute ~]# ps -e |grep kvm       //我这里列出了一下kvm的进程号
  953 ?        00:00:00 kvm-irqfd-clean
 6852 ?        00:01:55 qemu-kvm
 6859 ?        00:00:00 kvm-pit/6852
 7820 ?        00:00:53 qemu-kvm
 7827 ?        00:00:00 kvm-pit/7820
18943 ?        00:44:56 qemu-kvm
18953 ?        00:00:00 kvm-pit/18943

[root@compute ~]# taskset -h         //这里是关于taskset命令的用法

Usage: taskset [options] [mask | cpu-list] [pid|cmd [args...]]

Options:
 -a, --all-tasks         operate on all the tasks (threads) for a given pid
 -p, --p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值