Deep Dive On IBM i 7.4 And IBM i 7.3 TR6 Hardware Limits
April 29, 2019 Timothy Prickett Morgan
As everybody knows by now, IBM has announced both the Technology Refresh 6 for IBM i 7.3 and the shiny new IBM i 7.4 release. We did a brief overview of these operating system releases in last Wednesday’s issue, concurrent with the launch and ahead of their respective May 10 and June 21 general availability dates, to put them into perspective. Now, it is time to get into the nuts and bolts and bits and bytes of what Big Blue has announced.
Rather than try to do it all in one story or possibly two, we are breaking it up into several different areas that conceptually band together and allow for a deeper dive. In this particular story, I want to focus in on the way IBM has extended the operating systems across more cores and threads as well as the raising the number of disk arms – yes, disk arms – and file system logical units (LUNs) that the operating can handle.
Back in the old days when minicomputers ruled the midrange, systems were made with a single processor with a single core and the performance of that CPU was increased by shrinking the transistors through ever-emsmallening transistor sizes and thereby allowing for more transistors to be added to the chip as well as allowing that chip run a bit faster. This is the interplay between Moore’s Law and Dennard Scaling, which allows the transistors to shrink by a factor of 2X every two years or so and with circuits going about 40 percent faster over the same time period within the same power envelope. It was a great ride. It has gotten harder and harder to drop the voltage in circuits over the decades, and Dennard scaling of voltage and energy consumption per transistor ran out of gas around 2006 or so, concurrent with the dual-core Power6 processors from IBM and other dual-core CPUs from other vendors, and that is when we started using Moore’s Law more aggressively to add more cores to processors and, in the case of the Power family of chips, more threads per core. If we could not improve the single-thread performance by more than 5 percent or 10 percent per generation, we had to increase the parallelism of the processor and therefore the CPU socket and ultimately of the software stack riding above it.
The scalability of IBM i has come a long way in the past decade. And remember, there is always at least one logical partition running on an IBM i machine, so these are really limits to partition size. If you wanted to buy a bigger machine, you could run multiple partitions in parallel and the PowerVM hypervisor would allow that. But they would not be able to support the work across those partitions in a NUMA fashion, or with any other shared memory clustering for that matter.
Back in 2010, when the Power7 processors and IBM i 7.1, which was withdrawn and had its regular support discontinued in April 2018, was shiny and new. Back then, as we detailed in February 2010, IBM i could run in either Power6 mode on Power7 chips or in a more native mode on Power7 chips. IBM i 6.1 and 7.1 could support 32 cores and 64 threads in Power6 mode, and there was a special tweak available as a PRPQ through IBM Lab Services that allowed this Power6 mode to double to 64 cores and 128 threads. In native Power7 mode, the Power7 chips running IBM i 6.1 and IBM i 7.1 could do 32 cores and 128 threads shipped from the factory; there was no Lab Services extension for IBM i 6.1, but IBM i 7.1 could double that up to 64 cores and 256 threads. The Power7 hardware – specifically the Power 795 beast – itself could scale to 256 cores and 1,024 threads, so this was kind of a disappointment that the kernel of OS/400 and IBM could not span the full extent of NUMA cluster and high core and thread counts. And the fact that both IBM’s AIX 7.1 Unix variant of the then-current server Linuxes from Red Hat and SUSE Linux could scale across that full iron was irksome, too.
Four years later, after IBM i 7.1 Tech Refresh 8 and the shiny new IBM i 7.2 came out with the new Power8 processors, IBM once again extended the number of cores and threads that IBM i could span, both in the standard releases and with special PRPQs from Lab Services.
On Power7 and Power7+ processors, these chips supported 1, 2, or 4 threads (ST, SMT2, SMT4 in the IBM lingo) per core; the same base 32 cores and 128 threads as a maximum for IBM i 7.1 TR8 was the upper limit with the original 7.1 release. You could push that up to 64 cores and 256 threads with the PRPQ from IBM Lab Services. On Power8 iron, IBM i 7.1 TR8 adds support for the SMT8 threading, which is the full eight threads per core. On the largest Power8 machine on the market at that time in June 2014, IBM i 7.1 TR8 could span a two-socket machine with 24 cores and 192 threads. The theoretical maximum number of threads for IBM i 7.1 TR8 was 256 threads per partition across those 24 cores.
With IBM i 7.2, which was brand new at the time, the operating system could do 32 cores and 128 threads out of the box, and with the PRPQ this could be extended to 96 cores and 384 threads. That was up into the zone of the Power 780 machine, which was a 12-socket box with eight-core Power7 servers. On Power8 machinery, IBM is supporting the maximum 24 cores in the two-socket systems, but says the operating system is already good to go with 48 cores across four sockets. At that time, the thread count tops out at 192 threads for the current machines, but IBM says that with SMT8 mode, it can make IBM i 7.2 run across up to 768 threads. That is 96 cores across eight sockets with SMT8 turned on; or, it could be 12 sockets with only eight cores turned on as well.
Now, here we are with updates to the IBM i 7.3 operating system and the new IBM i 7.4 release, and here is how the cores and threads are stacking up across Power7 (and therefore Power7+), Power8, and Power9 iron:
IBM i 7.4 doesn’t run on Power7 or Power7+ iron, and IBM i 7.1 is not supported on Power9 iron. IBM i 7.2, IBM i 7.3, and IBM i 7.4 all max out at either 96 cores running in SMT8 mode or 192 cores running in SMT4 mode on Power8 processors, for a total of 768 threads. You need a PRPQ from Lab Services to get there On Power9 iron supporting IBM i 7.2, these same limits applied, and on IBM i 7.2 only the SMT8 mode against 96 cores was supported on Power9 chips,
With the new IBM i 7.4 release, Lab Services can stretch the operating system and therefore its database further and is ow supporting a maximum of 192 cores running in SMT8 mode with a total of 1,536 threads. That is double the maximum thread capability, and should add to the single system image performance significantly.
Now, as for disk arms and LUN sizes, here is what it looks like across the Version 7 releases of IBM i:
That is just a tad under doubling the number disk arms in auxiliary storage pools (ASPs), and a nearly a tripling for independent auxiliary storage pools (iASPs) for IBM i 7.4 compared to its predecessors in the Version 7 family. The LUNs, as you can see, have gotten a lot fatter.
These expansions mean that the hundreds of customers that still support IBM i on big iron – compared to thousands with AIX and Linux – can better keep up with those peer platforms and not hit any scalability ceilings on throughput performance and storage capacity and I/O. At the moment, IBM i can span from the smallest single socket Power9 with one core activated to the largest Power9 machine with 16 sockets, 12 cores core socket, and eight threads per core. IBM i has finally caught up to AIX and Linux.