Mathematical Accelaration SubSystem (MASS)
Introduction
MASS stands for "Mathematical Acceleration SubSystem".
MASS
* consists of tuned intrinsic mathematical functions such as sin(), cos(), log() and exp().

* supports C, C++ and Fortran. I

* has both scalar and vector versions.

* is threadsafe.

* usually provides better performance over the original intrinsic functions, but at the expense of reduced precision (1 to 2 bits at most).

Usage
For the scalar version, it's quite simple: just link your program with option lmass.
Example:
xlf90_r hello.f90 lmass
For the vector version, it's a bit more compliated. First, you need to tweak your code a little. For example, the code below
double precision :: a(100),b(100)
do i=1,100
b(i)=sin(a(i))
enddo
needs to be rewritten as:
double precision :: a(100),b(100)
b=vsin(a)
Then link it with lmassv or lmassvp5:
xlf90_r test.f90 lmassvp5
Performance
Documentation
IBM documentation (not much stuff here): [1]
A detailed introduction from Naval Oceanographic Office: [2]
Engineering and Scientific Subroutines (ESSL)
Introduction
"ESSL is a stateoftheart collection of subroutines providing a wide range of mathematical functions for many different scientific and engineering applications. Its primary characteristics are performance, functional capability, and usability."
ESSL provides subroutines in the following areas:
* Linear Algebra Subprograms

* Matrix Operations

* Linear Algebraic Equations

* Eigensystem Analysis

* Fourier Transforms, Convolutions and Correlations, and Related Computations

* Sorting and Searching

* Interpolation

* Numerical Quadrature

* Random Number Generation

Most real and complex subroutines in ESSL has two versions: short and longprecision. For example, SGEMM and DGEMM are the short and longprecision versions of subroutines that perform combined matrix multiplication and addition for general matrices, respectively.
Usage
After writing your code, the only thing you need to do is to compile it with the option lessl. For example:
xlf90_r test.f90 lessl
Performance
Documentation
Manual page (HTML format):[3]
Parellel ESSL (PESSL)
Users may direct questions to syshelp@loni.org.
