IBM Corp has produced a new set of libraries for its AIX compilers that will enable developers to build binaries on AIX 3.2.5 and the new AIX 4.1 that will run on PowerPC, Power and Power2 processors. Currently applications are all compiled in Power mode, which means that when the application is run on a PowerPC-based machine, AIX’s old static libraries had to invoke a software emulation of the unsupported instructions. The new ‘Common Mode’ cuts out any emulation, by restricting the compiler to instructions present in all of the processor types a lowest common denominator, if you like. The new software libraries are free for AIX 3.2.5 users and bundled with the new AIX 4.1. The price paid for common compilation is the inability to optimise for the special talents of a particular processor. In general it is only floating point performance that will suffer from a common mode compilation. Integer mathematics is more or less unaffected. IBM says that the new Power2 instructions deal exclusively with floating point data, and in particular, double precision maths. Applications that perform computations on consecutive elements of double precision arrays, perform many square root operations or conversions from floating point to integer could suffer a significant performance hit if compiled in common mode, rather than Power2-specific mode. On the PowerPC side, the biggest impact would be on applications that rely heavily on single precision floating point code. New instructions deal with square root, convert to integer, cache operations and other privileged instructions, which are not compiler generated. However IBM says that performance of double precision floating point applications compiled in common mode can also be hit if they contain sufficient square root and convert to integer operations.
