OpenMP
Contributed by Mitchell Wade, St. Olaf College '11
Taken from OpenMP's mission statement:
"The OpenMP Application Program Interface (API) supports multi-platform shared-memory parallel programming in C/C++ and Fortran on all architectures, including Unix platforms and Windows NT platforms. Jointly defined by a group of major computer hardware and software vendors, 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."
PPP Characteristics
Languages Supported: C++, C
OS Compatibility: Windows, Mac OS, Linux
Physical Resource Support: Local Multicore, Remote Multicore
Computational Model: Shared Memory
Context of Use
OpenMP is used in the following modules:
Materials
PPP Introduction to OpenMP (PDF) (Acrobat (PDF) 158kB Sep23 10) A brief introduction to OpenMP
PPP Introduction to OpenMP (Microsoft Word 78kB Sep23 10) A brief introduction to OpenMP
OpenMP implementation comes from downloading a compiler that supports the OpenMP API. The following are some compilers which have OpenMP 3.0 functionality:
- GNU gcc (4.3.2)
- IBM XL C/C++/Fortran
- Intel Fortran and C/C++ (11.0 and 11.1)
- Intel Parallel Studio
- Oracle Sun Studio
For more information on compiler compatibility and links to compilers, visit http://openmp.org/wp/openmp-compilers.
Resources
OpenMP official site. Includes API specifications, compilers, related resources, and a discussion forum.
Complete specifications for OpenMP 3.0
OpenMP tutorial
Comment? Start the discussion about OpenMP