IBM Engineering and Scientific Subroutine Library (ESSL) for IBM Linux On Power™
The Absoft High Performance Computing Software Development
Kit (HPC SDK) includes the IBM Engineering and Scientific Subroutine Library (ESSL). The Engineering
Scientific Subroutine Library (ESSL) is a highly optimized library of special function mathematical
subroutines. ESSL can be used for both developing and enabling many different types of scientific
and engineering applications, as well as numerically intensive applications in other areas such as
finance. Existing applications can be enabled by replacing comparable subroutines (or inline code)
with calls to ESSL subroutines. The availability of a variety of ESSL subroutines significantly
reduces the effort required in developing a new application. This also makes migration of an
application to a new platform easier because ESSL is tuned for all platforms where it is available.
ESSL subroutines are well tested, extremely reliable and optimized for the Power platform. Utilizing
them whenever possible not only saves time but also increases performance of your application.
More... |
|
- It has an easy-to-use call interface
- If your existing application programs use the ESSL Serial library, you
only need to re-link your program to take advantage of the increased performance
of the ESSL SMP Library
- It supports a 64-bit environment
- It has informative error-handling capabilities, enabling you to calculate
auxiliary storage sizes and transform lengths
- An online book that can be displayed using an Hypertext Markup Language
(HTML) document browser, is available for use with ESSL
- With the Absoft Common Installer, ESSL becomes easy to install and
start using right away!
Back
to top |
- ESSL provides nine major areas of mathematical computation, providing the
computations commonly used by industry applications
- ESSL includes numerous utilities, performing general-purpose functions
- The ESSL subroutines have been designed to provide high performance on POWER5 processors and SMP machines
To achieve high performance, the subroutines use state-of-the-art algorithms
tailored to specific operational characteristics of the hardware, such as
cache size, Translation Lookaside Buffer (TLB) size, and page size
Most subroutines use the following techniques to optimize performance:
- Managing the cache and TLB efficiently so the hit ratios are maximized;
that is, data is blocked so it stays in the cache or TLB for its computation
- Accessing data stored contiguously--that is, using stride-1 computations
- Exploiting the large number of available floating-point registers
- Using algorithms that minimize paging
- Structuring the ESSL subroutines so, where applicable, the
compiled code fully utilizes the dual floating-point execution units. Because
two Multiply-Add instructions can be executed each cycle, neglecting overhead,
this allows four floating-point operations per cycle to be performed.
- Structuring the ESSL subroutines so, where applicable, the
compiled code takes full advantage of the hardware data prefetching
The Absoft High Performance Computing Software Development
Kit (HPC SDK) includes the IBM Engineering and Scientific Subroutine Library (ESSL). The Engineering
Scientific Subroutine Library (ESSL) is a highly optimized library of special function mathematical
subroutines. ESSL can be used for both developing and enabling many different types of scientific
and engineering applications, as well as numerically intensive applications in other areas such as
finance. Existing applications can be enabled by replacing comparable subroutines (or inline code)
with calls to ESSL subroutines. The availability of a variety of ESSL subroutines significantly
reduces the effort required in developing a new application. This also makes migration of an
application to a new platform easier because ESSL is tuned for all platforms where it is available.
ESSL subroutines are well tested, extremely reliable and optimized for the Power platform. Utilizing
them whenever possible not only saves time but also increases performance of your application.
ESSL is a state-of-the-art 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 accuracy comparable to libraries using equivalent
algorithms with identical precision formats. Both short- and long-precision real versions of the subroutines
are provided in most areas of ESSL. In some areas, short- and long-precision complex versions are also
provided, and, occasionally, an integer version is provided. The data types operated on by the short-precision,
long-precision, and integer versions of the subroutines are ANSI/IEEE 32-bit and 64-bit binary floating-point
format, and 32-bit integer. See the ANSI/IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE
Standard 754-1985, for more detail.
The ESSL subroutines follow standard Fortran calling conventions
and must run in the Fortran run-time environment. When ESSL subroutines are called from a program in a
language other than Fortran, such as C or C++, the Fortran conventions must be used. This applies to all
aspects of the interface, such as the linkage conventions and the data conventions. For example, array
ordering must be consistent with Fortran array ordering techniques.
Back
to top
 |
|
 |
- This release of ESSL is supported on the following operating system versions
or distributions:
- AIX 5L(TM) Version 5.2
- AIX 5L Version 5.3
- SuSE Linux Enterprise Server 9 for POWER (SLES9)
- Red Hat Enterprise Linux 3 (RHEL3) (Update 3)
- The ESSL Libraries are now tuned for the POWER5(TM) and the PowerPC 970.
- The Dense Linear Algebraic Equation Subroutines now include these new LAPACK subroutines:
- CPPSV and ZPPSV; see the subroutine description for Positive
Definite Complex Hermitian Matrix Factorization and Multiple Right-Hand Side
Solve on page SPPSV,
DPPSV, CPPSV, and ZPPSV -- Positive Definite Real Symmetric and Complex
Hermitian Matrix Factorization and Multiple Right-Hand Side Solve.
- CPPTRF and ZPPTRF; see the subroutine description for Positive Definite
Complex Hermitian Matrix Factorization on page SPOTRF,
DPOTRF, CPOTRF, ZPOTRF, SPOF, DPOF, CPOF, ZPOF, SPPTRF, DPPTRF, CPPTRF,
ZPPTRF, SPPF, and DPPF -- Positive Definite Real Symmetric or Complex
Hermitian Matrix Factorization.
- CPPTRS and ZPPTRS; see the subroutine description for Positive Definite
Complex Hermitian Matrix Multiple Right-Hand Side Solve on page SPOTRS,
DPOTRS, CPOTRS, ZPOTRS, SPOSM, DPOSM, CPOSM, ZPOSM, SPPTRS, DPPTRS,
CPPTRS, and ZPPTRS --Positive Definite Real Symmetric or Complex
Hermitian Matrix Multiple Right-Hand Side Solve.
- SPPTRI and DPPTRI; see the subroutine description for Positive
Definite Real Symmetric Matrix Inverse on page SPOTRI,
DPOTRI, CPOTRI, ZPOTRI, SPOICD, DPOICD, SPPTRI, DPPTRI, SPPICD, and
DPPICD -- Positive Definite Real Symmetric or Complex Hermitian Matrix
Inverse, Condition Number Reciprocal, and Determinant.
Back
to top
The mathematical subroutines, in nine computational areas,
are tuned for performance. The computational areas are:
- 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
ESSL provides two run-time libraries:
- The ESSL Symmetric Multi-Processing (SMP) Library provides
thread-safe versions of the ESSL subroutines for use on all SMP processors. In addition, a subset of these subroutines are also multithreaded
versions; that is, they support the shared memory parallel processing programming
model. You do not have to change your existing application programs that call
ESSL to take advantage of the increased performance of using the SMP processors;
you can simply re-link your existing application programs. For a list of the
multithreaded subroutines in the ESSL SMP Library, see the ESSL Documentaion.
- The ESSL Serial Library provides thread-safe versions
of the ESSL subroutines for use on all processors. You may use this library
to develop your own multithreaded applications.
All libraries are designed to provide high levels of performance
for numerically intensive computing jobs. All versions provide mathematically
equivalent results.
The ESSL Serial Library and the ESSL SMP Library support both 32-bit environment and 64-bit environment
applications.
The ESSL subroutines can be called from application programs written in
Fortran, C, and C++. ESSL runs under the AIX(R) and Linux(R) operating systems.
December 19 2004
- Electronic Delivery full Media
Documentation for HPC SDK
December 31 2004
Please see the HPC SDK Terms and Conditions for more information.
Agreement: IBM End User License Agreement.
The IBM End User License Agreement (EULA) should be reviewed prior to purchase of the Engineering and Scientific Subroutine Library (ESSL).
Limited warranty
applies: Yes
Warranty:
This program has warranty for a minimum of one year from acquisition
from Absoft. The warranty provided to the customer, for at least
one year from acquisition, is access to data bases (read Web sites)
for program information, FAQs, including any known fixes to defects,
which the customer can download or obtain otherwise and install
at their leisure.
Software maintenance
applies: Yes
IBM includes one year of Software Maintenance
with the initial license acquisition of each program acquired. The
initial period of Software Maintenance can be extended by the purchase
of a renewal option that is available.
MaxFlex·
Flexible Licensing available: No
Floating Network
Licenses available: No
Copy and use on
home/portable computer: No
Volume orders: No
Back
to top
Fortran 95 for Linux on Power™
IBM XL Fortran for Linux on Power™
IBM XL C/C++ for Linux on Power™
HPC SDK for Linux on Power™
Absoft Common Installer for Linux on Power™
Absoft Modules Environment for Linux on Power™
Common License Manager for Linux on Power™
Back to top
User Guide
Product Literature
Presentations
White Papers
Back to top
- Fx2
Debugger - now included with HPC SDK
Back
to top
|