Paving the Road to OpenMP 4

The dust of SC’11 starts to settle and several announcements around OpenMP have been made in Seattle.



There has been a change in the OpenMP Architecture Review Board and Language Committee. Several new members have joined the committee and started to actively participate in the development of future OpenMP versions. Also, Michael Wong (IBM) has been elected as the new CEO of the OpenMP ARB. Michael will lead the ARB towards the release of the next version of the OpenMP API Specification. Michael brings in a lot of expertise in being one of IBM’s representatives in the OpenMP committee as well as other standard bodies such as C++. At SC’11 he has introduced himself at SC'11 and gave a great inaugural speech at the OpenMP BOF session. You can find the slide deck here.



In June 2011, the version 3.1 of the OpenMP 3.1 API Specification has been released and of course the current version of Intel® Composer XE 2011 already the supports the 3.1 specification. The GNU Compiler Collection is expected to support it when GCC 4.7 is released.



In the meantime my friends in the OpenMP Language Committee continue working on version 4.0 of the OpenMP API Specification. Version 4.0 is planned for Nov 2012; SC’12 would be a great opportunity to announce the release of a new specification, isn’t it?



There are several big additions that are under heavy investigation by the OpenMP Language Committee members. Accelerators and coprocessors, standardized affinity and new features around OpenMP tasks are just a few features that we are working on.



My sub-group works on specifying an error model for the OpenMP API, so that programmers finally are able to handle runtime errors and C++ exceptions accordingly. This will make writing safe code less cumbersome. Programmers will be able to detect both runtime and user-defined error conditions (e.g. C++ exceptions) and react accordingly. During the last year, we have made some very good progress on investigating the requirements for the new features and carefully investigated existing approaches for error handling in parallel programming languages.



In summary, the future of OpenMP looks bright from an OpenMP Language Committee perspective. Stay tuned!


For more complete information about compiler optimizations, see our Optimization Notice.