This article is more than 1 year old
IBM tunes math on Power/AIX boxes
Gooses parallel Linux play
IBM is taking the wraps off its Engineering and Scientific Subroutine Library (ESSL) for AIX V5.1.
When you charge a pretty hefty premium for a processor and the server that wraps around it, you have to do all you can to squeeze the performance inherent in the box out of the box. This has been true for mainframes for more than four decades, and as IBM's Power Systems have matured and x64 alternatives offer cheap ints and flops, Big Blue's math libraries and parallel programming tools are what put the squeeze on Power-based servers doing scientific work.
IBM's EESL is a set of math subroutine add-ons for the AIX operating system that have been tuned for the Power machines, and in this case, V5.1 is tuned specifically to get the most oomph out of dual-core, four-thread Power6 and Power6+ processors and eight-core, 32-thread Power7 processors.
ESSL includes linear algebra subprograms, matrix operations, linear algebraic equations, eigensystem analysis, Fourier transforms, convolutions, and correlations, and related computations (which is right where I switched my college major from engineering to American literature, where girls hung out), sorting and searching, interpolation, numerical quadrature, and random number generation. IBM says that it has added three new subroutines to the ESSL toolbag, which boost the performance of linear algebra and Fourier transform calculations on Power6 and Power7 iron.
The important thing is that the ESSL libraries work with serial and parallel programs, and know how to run in parallel on threads within a single SMP system. If you want to run an HPC application across a Power/AIX cluster linked together using the Message Passage Interface (MPI) protocol commonly used with supercomputers, then you need to get Parallel ESSL, which is an add-on. And you get IBM's Tivoli Workload Scheduler LoadLeveler to batch up the various workloads on the cluster to run them on the parallel cluster.
Both the serial and SMP libraries in the core ESSL product have been tuned to make full use of the AltiVec SIMD units on Power6 and Power6+ chips and the VSX SIMD units on the Power7 processors. ESSL can support 32-bit or 64-bit integers and pointers, and can be called from Fortran, C, and C++ programs running on AIX 5.3 or 6.1. (By the way, ESSL V5.1 will be the last library set to run on Power iron using AIX 5.3.) ESSL V5.2 will be available on June 25.
IBM has also goosed its Parallel Environment for Linux with a V5.2 release, adding in more parallel programming APIs and providing an Eclipse plug-in that lets the HPC Toolkit to snap into Eclipse and garb information from the Parallel Environment as HPC applications are running to allow them to analyze and then tweak the apps to get better performance out of them. PE for Linux V5.2 is supported on Novell's SUSE Linux Enterprise Server 11 on IBM's own Power Systems machines and runs on Red Hat's Enterprise Linux 5.4 on x64-based servers. It will be available on June 11. ®