One of the many parts of the announcement on February 5 was the introduction of EasyOptimize technology. You might have missed it, but it’s briefly described in several places, including on the IBM Power Systems Advantages page. The key words used to describe EasyOptimize are:
“To achieve maximum performance, POWER processor-based systems are designed with EasyOptimize technologies that enable the system to tune automatically to specific industry workloads.”
There are various technologies in the EasyOptimize category. One of them is the Dynamic Platform Optimizer, which is used across a Power platform to optimize memory access for a system with multiple partitions running. I’m not going to describe it in detail, because it was very nicely covered in the Power Firmware blog a couple weeks back, but it’s a clear example of the kind of technology we’re building.
Another example that’s called out in some places is called AIX Dynamic System Optimizer. It’s an extension of the AIX Active System Optimizer and performs such functions as cache and memory affinity optimization, and tuning the operation of the operating system to optimize database workloads.
The same kind of function is integrated into the fabric of the IBM i operating system. Consequently, as we were preparing for the announcement, we also coined the term IBM i Dynamic System Optimizer to describe the integrated features tune system resources to optimize business workloads. In other words, just as for AIX, EasyOptimize refers to a set of capabilities, some of which are delivered by the Power processors in conjunction with the firmware that underlies all Power operating systems.
EasyOptimize is also a set of integrated capabilities in IBM i. The Dynamic System Optimizer (DSO) function is autonomic resource management built into the IBM i operating system. Its first underpinnings were made available to clients more than 20 years ago, and it has been enhanced every release since. IBM i has been actively working to make memory and processor affinity optimal for many years, and advancements are made in each release. Affinity, for those who are not familiar with the term, describes the “distance” data has to travel from memory in the system to the processors that need to act on the data in that memory. In a system with as many cores as Power has, and as much memory as Power has, it would be very easy to have data drift “away” from the processors acting on it. Very complex algorithms are involved in ensuring that data that’s currently being used, or that will soon be used, by a processing unit (a core) is as close as possible to reduce latency. Again, affinity autonomic processing has been a part of IBM i for many years, and it represents an excellent example of EasyOptimize capabilities.
Another example you might have heard about is the Performance Adjuster (QPFRADJ), which has been an integrated part of the operating system for more than two decades. It learns how the customer's workloads are using memory and processors and it balances system usage to optimize performance and throughput. Another example, which was made available a couple of years ago, is called IBM i Workload Group support, which allows clients to limit the processing power given to their workloads while still leaving the detailed management of which work runs on which cores to the operating system. Similarly, using a built-in function called Dynamic SMT, the IBM i operating system can recognize when a core does not need to be shared, and allow processes to run in single-threaded mode, automatically improving workload performance. These EasyOptimize autonomic performance capabilities serve the fundamental principle of integrated value in IBM i.
And then of course, we have the integrated DB2 that automates various database operations to optimize system usage based on the precise workload that’s being run. The 7.1 release, for example, delivered Adaptive Query Processing, which can automatically recognize when a frequently run query is taking longer than it has in the past, and optimizes the query to improve performance.
Most of the Dynamic System Optimizer functions within IBM i are integrated for no extra charge. DB2 for i does have some features that fit into the EasyOptimize category, which are available for an additional charge. For example, DB2 Symmetric Multiprocessing (5770SS1 Option 26) is a feature that can spread database work, such as complex queries, across multiple threads and cores automatically. When it was first introduced, only our largest customers were using multiple cores and multiple threads of execution, but with today’s POWER7 and POWER7+ processors, many more clients might get benefit from this capability.
So when you hear people talking about EasyOptimize capabilities in Power, you can be assured that IBM i is playing in that arena, and has been for a long time. Together with the rest of the Power Systems family, we are working together to use the expertise of our scientists and engineers to optimize the way our systems are used, based on the workloads your business requires.