KVM虚拟机CPU的软件调优首先需要对NUMA技术有一定了解,调优的主要手段就是虚拟机对物理机CPU逻辑内核的手工绑定。 内存方面的调优手段主要是KSM,即相同内存页合并、内存气球技术以及大页内存的使用。
NUMA技术与应用
多CPU共同工作技术的架构:SMP,MPP,NUMA
1.1 SMP技术: 多个cpu通过一个总线访问存储器,因此SMP系统有时也被称为一致性内存访问(UMA)结构体系。一致性指无论在什么时候,处理器只能为内存的每个数据保持或共享唯一一个数值。(多个cpu通过总线访问共同的内存)。缺点是扩展性有限,存储器接口达到饱和的时候,增加处理器不能获得更高的性能,因此SMP方式支持的CPU个数有限啊
1.2 MPP模式: 一种分布式存储器模式,能够将更多的处理器纳入一个系统的存储器,一个分布式存储器模式具有多个节点,每个节点都有自己的存储器,可以配置为SMP模式。单个节点相互连接起来形成一个总系统。MPP可以近似理解成一个SMP的横向扩展集群。MPP一般依靠软件实现。
1.3 NUMA技术: 每个处理器都有自己的存储器,每个处理器也可以访问别的处理器的存储器。 多核NUMA CPU架构: NUMA node1: NUMA node2: Core1 Core2 Core1 Core2 CPU0 CPU1 Core3 Core4 Core3 Core4
查看cpu详情
|
|
KVM虚拟机NUMA调优
宿主机的NUMA信息查看和配置:
因为NUMA架构每个处理器都可以访问自己和别的处理器的存储器,访问自己的存储器要比访问别的存储器快很多,相差10~100倍,所以NUMA调优的目标就是让处理器尽量访问自己的存储器。
|
|
查看numa架构模式
|
|
查看每个node的内存情况
|
|
虚拟机NUMA信息查看与配置
查看虚拟机VCPU和物理CPU的对应关系:
|
|
透明大页技术与应用
X86默认的内存页大小是4KB,也可以使用2MB或者1GB的巨型页,系统的巨型页可以传输过虚拟机,kvm虚拟机可以通过分配巨型页提高性能。 使用巨型页可以提高内存的分配效率,提升系统性能。
使用透明大页的好处: 可以使用swap,内存页默认2MB,需要使用swap的时候,内存被分割为4KB。 对用户透明,不需要用户做特殊配置。 不需要root权限 不需要依赖某种库文件
|
|