# Compiler optimization techniques

There are several techniques for optimizing compilers.

The three main areas of source-code tuning are as follows:

- Programming techniques that take advantage of the optimizing compilers and the system architecture.
- BLAS, a library of Basic Linear Algebra Subroutines. If you have a numerically intensive program, these subroutines can provide considerable performance enhancement. An extension of BLAS is ESSL, the Engineering Scientific Subroutine Library. In addition to a subset of the BLAS library, ESSL includes other high-performance mathematical routines for chemistry, engineering, and physics. A Parallel ESSL (PESSL) exists for SMP machines.
- Compiler options and the use of preprocessors like KAP and VAST, available from third-party vendors.

In addition to these source-code tuning techniques, the fdpr program restructures object code. The fdpr program is described in Restructuring executable programs with the fdpr program.