OpenMP: Application program interface for shared memory parallel programming

OpenMP is an Application Program Interface (API) that supports multi-platform shared-memory parallel programming in Fortran and C/C++. It is intended for all architectures, including Unix platforms and Windows NT platforms.

OpenMP is a portable, scalable model that gives shared-memory parallel programmers a simple and flexible interface for developing parallel applications for platforms ranging from the desktop to the supercomputer. It has become one of two predominant standards for programming high performance computers, the other being the Message Passing Interface (MPI). OpenMP has the advantages that it works by inserting directives into the program - the parallel and serial source codes are therefore the same. Also it is possible to incrementally parallelise a program, reducing the complexity of porting software.

EPCC is an Auxilliary Member of the OpenMP ARB, the body which adminsters OpenMP, and contributes to the OpenMP Language Committee which is responsible for proposing changes and extensions to the API.

For further information OpenMP project website