本节介绍的内容涉及到如何提高进程与CPU的亲和度、CPU和内存的亲和度、虚拟CPU与物理CPU的亲和度。
对于Dedicated CPU模式,可以采用绑定进程到指定CPU。
对于Sharing CPU模式,规划LPAR时,不要将CPU entitlement值设置过小。尽量减少Hypervisor动态调整CPU资源的幅度,这样Hypervisor在调度CPU资源的时候,就可以尽量分配相同核上的CPU时间片,同时减少CPU调度时出现的Context Switch操作。即设置LPAR的Desired Processor Unit值,满足分区正常工作的CPU需求。
不要将虚拟CPU(VP)值设置过大,过多的VP不但会影响VP与物理CPU的亲和性,也会影响进程与VP之间的亲和性。
总之,若VP与EC的比值过大,建议缩小二者的比值,降低VP或提高EC。二者的比值最大可以是10,最小为1,IBM官方文档中给出虚拟化平台最佳实践是1.5。但实践证明只要比值超过1,都会有不同程度的性能影响(响应时间方面),如果对响应时间要求非常苛刻的系统,建议比值越小越好,或者可以考虑把Sharing模式改为dedicated模式。
当一台服务器刚刚完成Power On,顺序激活各个LPAR时,Hypervisor会自动保证CPU与内存之间最佳的Affinity状态。
服务器经过长期运行之后,内存的分配并不是一成不变的。如果发生了很多动态LPAR资源调整、修改LPAR的Profile配置、删除LPAR、创建新的LPAR、LPM分区迁移操作,或者分区由于Workload很大通过Micro Partitioning方式获得了大量额外CPU时间片,都会导致Affinity状态偏离初始最佳状态。
在Power7+产品平台(9117-MMD/9179-MHD),760微码版本引入了一项新功能Dynamic Platform Optimizer(DPO),该功能可以高效地、在线地改善内存Affinity状态。
使用HMC命令“lsmemopt –m <system_name> -o currscore”来查看当前的affinity分值。Affinity分值为从0~100,0代表最差的Affinity状态,100代表最佳的Affinity状态。
使用HMC命令“lsmemopt -m <system_name> -o calcscore”来预估经过DPO功能优化后能够达到的Affinity分值。
使用HMC命令“optmem -m <system_name> -o start –t affinity”来对整台服务器进行Affinity优化。
使用HMC命令“lsmemopt -m <system_name>”显示当前DPO优化操作的进度。
使用HMC命令“optmem -m <system_name> -o stop”可以提前中断正在进行中的DPO优化操作。这可能会导致某些分区处于非常糟糕 的Affinity状态。
同时optmem命令还有-xid参数指明某个LPAR不需要优化,-id参数指明首先优化某个LPAR。例如“optmem –m myserver –o start –t affinity –xid 4 –id 2”命令的含义是,对于服务器myserver开始DPO优化操作,对LPAR ID 4不优化,首先对LPAR ID 2开始优化,接下来安装重要程度依次优化其它没有明确说明的LPAR。
注:在进行DPO操作的时候,不允许同时执行DLPAR和LPM操作。
AIX 7.1 TL2 (or later),AIX 6.1 TL8 (or later),VIOS 2.2.2.0,IBM i 7.1 PTF MF56058操作系统可以正确地识别DPO完成报告,并动态地识别到物理资源的真实状态。
但是对于较低的操作系统版本,将无法识别DPO完成报告,也就无从得知底层物理资源的变化。所以,建议不要对运行低版本操作系统的分区执行在线DPO优化操作。
在不支持DPO功能的情况下,提高内存Affinity的最有效方式为Power Off、Power On整台服务器,因为在服务器Power On之后,会按照实现最优Affinity为目标,为分区分配CPU和内存。
具体步骤如下
(1) 根据需要修改分区Profile配置文件
(2) 将Profile发生变化的分区Deactivate,然后以新的Profile Reactivate分区至SMS菜单
(3) 等待所有分区都获得了期望的硬件资源之后,将所有分区Deactivate
(4) Power Off服务器
(5) Power On服务器
(6) 然后Activate分区(无次序要求)
如果当前不支持DPO功能,只想重启一些LPAR,不愿意重启整台服务器,可以通过HMC命令chhwres来改善内存Affinity。
具体步骤如下:
该方法也可以用于单个LPAR的亲和度调整,但改善程度有限,改善程度取决于很多因素:服务器上CPU的空闲情况、内存的空闲情况、其它LPAR的CPU、内存资源配置。
计算交易系统每笔业务消耗的CPU在容量规划、测试环境计划和部署、测试结果分析过程中比较重要。下节介绍计算每笔业务消耗CPU的几种方法。
性能指标之资源指标 CPU配置参数对性能的影响
性能指标之资源指标 CPU利用率的性能分析
性能指标之资源指标 CPU亲和性原理介绍及如何量化读数
性能指标之资源指标 如何精确计算每笔交易消耗的CPU
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞5
添加新评论0 条评论