Welcome back! Today we're going to dive into a new function called Dynamic Platform Optimizer (DPO) which was recently released via FW 760.00 for exisitng P7 High-end systems (FHB) and the new P7+ based IBM Power 770 (MMD) and 780 (MHD) systems. This touched multiple subsystems from within the IBM Power servers but Power Firmware (specifically PHYP) had a large contribution to it's functoin.
What does it Do?
In a nutshell, DPO optimizes memory access for the partitions running in your system. Faster memory access can equal large boosts in overall performance. It does this by pairing processor chips with memory in an as-optimized fashion as possible (the closer the memory to the processor that using it, the faster things will run). Here's the high level priority rules the firmware uses:
1. Memory that is directly attached to the processor using it.
2. Memory that is within the same node/drawer as teh processor using it.
3. Memory in other nodes/drawers
Why do I need It?
When partitions are initially created, the above rules are followed automatically but as new partitions are created and deleted, DLPAR operations are performed, partitions are moved around, and functions like mobility are used, the configuration can become degraded in regards to memory association. DPO is a way to re-optimize your system based on its current state without requiring a system reboot.
How do I use It?
Control is done via the HMC command line tool (lsmemopt and optmem). The command line tools provide ways to see your current memory affinity score (0-100) and to control which partitions are affected as well as to provide overall status of the operation. See the reference below for more information.
What are the Caveats?
The most important one is that running DPO on partitions that have older OS's could actually degrade performance unless the partition is rebooted! Please either plan a reboot after running DPO or be updated to the appropriate level as defined in the references below.
Please note that running DPO will impact the performance of the partitions it is running against (up to 20%) so plan accordingly. PHYP will utilize idle CPU cycles from cores within the system to run the required algorithms during the DPO process so there is no impact to other partitions in the system.
Finally, some mobility operations and virtualization features are blocked while running DPO.
Do I still need this for P8?
DPO is still valid and available for P8 but affinity is not as sensitive due to more links and higher bandwidth between all of the processors and memory.
IBM PowerVM Virtualization Managing and Monitoring (see chapter 15)