OpenMP (Open Multi-Processing) is an application programming interface (API) that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran, on most platforms, processor architectures and operating systems. It consists of a set of compiler directives, library routines, and environment variables that influence run-time behavior.
OpenMP uses a portable, scalable model that gives programmers a simple and flexible interface for developing parallel applications for platforms ranging from the standard desktop computer to the supercomputer. An application built with the hybrid model of parallel programming can run on a computer cluster using both OpenMP and Message Passing Interface (MPI), or more transparently through the use of OpenMP extensions for non-shared memory system.
For our HPC cluster the clear favourite is SuSE Linux Enterprise Server (SLES) 11, which has regularly demonstrated its long-term stability and reliability. Unlike most others, this system is also designated a “Supported Platform” by many manufacturers in the HPC field. Trouble-free operation with the applications is guaranteed. The very new SLES 12 is currently undergoing rigorous trials and will only be introduced after it has proven to be equally robust.