OpenMP 3.1 Released

The OpenMP Architecture Review Board announces latest update

PORTLAND, Ore.July 21, 2011 — The OpenMP ARB today announces the release of Version 3.1 of the OpenMP specification.  This version updates Version 3.0 from 2008. The 3.1 version is a minor update, and retains 100% backward compatibility with Version 3.0.

Version 3.1 adds several new features including:

  • The addition of predefined min and max reduction operators for C++ and C.
  • Extensions to the atomic construct to allow the value of the updated variable to be captured or overwritten.
  • A mechanism to bind threads to processors.
  • Additions to support optimizations within the OpenMP tasking model.

“Version 3.1 represents a significant effort on the part the OpenMP Language Committee, and lays the ground work for future extensions to better support emerging hardware directions,” stated OpenMP Language Committee Chair Bronis R. de Supinski. “We have added extensions that handle some of the most frequent user requests while also working to make the specification and its associated examples more clear.  We expect these extensions will improve usability and performance.”

“Concurrent to our work on version 3.1, we have also made progress on several significant enhancements to the specification that we expect to serve as the basis for our next version,” de Supinski continued. “Topics under consideration include support for accelerators such as GPUs, major enhancements to the tasking model, mechanisms to handle runtime errors and general user defined reductions.”

The complete 3.1 specification in PDF format can be found at on OpenMP ARB website at http://openmp.org/wp/openmp-specifications.

The OpenMP members warmly welcome comments, corrections and suggestions on this version or on future directions.  Comments may be left at the on-line forum, located at http://openmp.org/forum.

About OpenMP

The OpenMP Application Program Interface (API) is a multi-platform shared-memory parallel programming model for the C, C++ and Fortran programming languages. OpenMP is supported on all architectures including UNIX and Microsoft Windows platforms. Jointly defined by a group of major computer hardware and software vendors and the user community, 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 laptop to the supercomputer. OpenMP is the most popular shared-memory parallel programming model in use today and is a cornerstone technology in high performance and technical computing.

About OpenMP Architecture Review Board

Incorporated in 1999, The OpenMP ARB is the non-profit corporation that owns the OpenMP brand, oversees the OpenMP specification and produces and approves new versions of the specification. The OpenMP ARB helps to organize and fund workshops and other related events, and promotes OpenMP. The OpenMP ARB’s mission is to standardize shared memory multiprocessing APIs. Further information can be found at http://www.openmp.org/.