Wednesday Jul 20, 2011

OpenMP 3.1 Specs Released

OpenMP LogoThe OpenMP Architecture Review Board has released an updated version of the OpenMP shared memory parallelization specifications. 3.1 contains some new features but it's mainly a clarification of the 3.0 specs.

The 3.1 version is a minor release that does not break existing, correct OpenMP applications. However, it does include several new features, most notably the addition of predefined min andmax reduction operators for C and C++, and extensions to the atomic construct that allow the value of the shared variable that the construct updates to be captured or written without being read. Also, extensions have been added to bind threads to a processor, and to support optimization of applications that use the OpenMP tasking model.

“Version 3.1 represents a significant effort on the part the OpenMP Language Committee that lays the ground work for future extensions to better support emerging hardware directions,” stated 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 clearer. We expect these extensions will improve usability and performance.”

“Concurrent to our work on version 3.1, we have also been making progress on several significant enhancements to the specification that we expect to serve as the basis for version 4.0,” de Supinski continued. “Topics under consideration include support for accelerators such as GPUs, major enhancements to the tasking model, mechanisms to support error handling and user defined reductions. I welcome inquiries from anyone interested in contributing to these directions.”

The complete 3.1 specification in PDF can be found on the Specifications page.

new forum to discuss the 3.1 specification is also now available.

Monday Feb 07, 2011

OpenMP 3.1 Draft Spec for Public Comment

OpenMPThe OpenMP Architecture Review Board  has announced the release of a draft of the OpenMP specification, version 3.1 for comment by the community.

This draft will serve as the basis of an official 3.1 update of the specification, which is expected to be ratified in time for the International Workshop on OpenMP (IWOMP) 2011 in Chicago.

All interested users and implementers are invited to review the comment draft and to provide feedback through the Draft 3.1 Public Comment OpenMP Forum.

The 3.1 version is intended as a minor release that will not break existing, correct OpenMP applications. However, it does include several new features, most notably the addition of predefined min and max operators for C and C++, and extensions to the atomic construct that allow the value of the shared variable that the construct updates to be captured or written without being read. It also includes extensions to the OpenMP tasking model that support optimization of its use.

Tuesday Jan 11, 2011

CALL FOR PAPERS: International OpenMP Workshop

7th International Workshop on OpenMP IWOMP 2011
June 13 – 15, 2011   Chicago, IL

Submission deadline January 31, 2011

The 2011 International Workshop on OpenMP (IWOMP 2011) will be held in Chicago, IL. It is the premier forum to present and discuss issues, trends, recent research ideas and results related to parallel programming with OpenMP. The international workshop affords an opportunity for OpenMP users as well as developers to come together for discussions and sharing new ideas and information on this topic. IWOMP 2011 will be a three-day event. The first day will consist of tutorials focusing on topics of interest to current and prospective OpenMP developers, suitable for both beginners as well as those interested in learning of recent developments in the evolving OpenMP standard. The second and third days will consist of technical papers and panel session(s) during which research ideas and results will be presented and discussed.

We solicit submissions of unpublished technical papers detailing innovative, original research and development related to OpenMP. All topics related to OpenMP are of interest, including OpenMP applications in any domain (e.g., scientific computation, video games, computer graphics, multimedia, information retrieval, optimization, text processing, data mining, finance, signal and image processing and numerical solvers), OpenMP performance analysis and modeling, OpenMP performance and correctness tools and proposed OpenMP extensions.

Advances in technologies, such as multi-core processors and accelerators (e.g., GPGPU, FPGA), the use of OpenMP in very large-scale parallel systems, and recent developments in OpenMP itself (e.g., tasking) present new opportunities and challenges for software and hardware developers. IWOMP 2011 solicits submissions that highlight OpenMP work on these fronts.

Submitted papers for review should be limited to 12 pages and follow LNCS guidelines. Submission deadline is Jan. 31, 2011. Submit your paper to: Authors of accepted papers will be asked to prepare a final paper of up to 15 pages.

Important Dates:

  • Paper submission deadline: January 31, 2011
  • Notification of acceptance: February 28, 2011
  • Camera-ready version of paper due: March 21, 2011
  • Tutorial and Workshop in Chicago: June 13-15, 2011

Tuesday Oct 13, 2009

HPC Profiling for Fun and Profit

Just released:

HPC Profiling with the Sun Studio Performance Tools
Marty Itzkowitz and Yukon Maruyama (Sun Microsystems) describe how to use the Sun Studio Performance Tools to understand the performance issues in single-threaded, multi-threaded,  OpenMP, and MPI applications, and the techniques used to profile them. This paper was presented at the Third Parallel Tools Workshop held in Dresden Germany in September.

The link to the article is:

Tuesday Sep 01, 2009

Going Parallel

Need to know more about parallel and multithreaded programming, but were afraid to ask? 

Here's a really good set of seven tutorials presented by Ruud van der Pas called:

"An Introduction to Parallel Programming"

Monday Jun 22, 2009

Sun Studio 12 Update 1 Supports OpenMP 3.0

Just released today, the latest Sun Studio 12 Update 1 compilers and tools support the OpenMP 3.0 tasking features natively.

You can download the entire suite of software tools from the Sun Studio portal and the OpenSolaris repository.

Also, there's an updated OpenMP 3.0 API User's Guide.

And release notes, readmes, and other documentation.

Thursday Jun 18, 2009

OpenMP 3.0

OpenMP is a shared memory multithreading API that utilizes source code directives to turn a serial program into a parallel program. In most cases it doesn't require any reprogramming, just the insertion of directives around loops.

The Sun Studio compilers recognize OpenMP directives and generate the appropriate parallel code automatically. 

The OpenMP API specification is under constant development by a committee of international volunteers. The official website is

The annual International Workshop on OpenMP (IWOMP) was held in Dresden, Germany last week and a number of interesting presentations were given. Most of the slides are now available on the IWOMP 2009 website.

Here are some of particular interest:

An Overview of OpenMP 3.0 Ruud van der Pas, Sun Microsystems
Tasking in OpenMP 3.0 Alejandro Duran, Barcelona Supercomputing Center
Sun Studio OpenMP Compilers and Tools Ruud van der Pas, Sun Microsystems
OpenMP And Performance Ruud van der Pas, Sun Microsystems


Deep thoughts on compiling C, C++, and Fortran codes with Oracle Solaris Studio compilers, especially optimization and parallelization, from the Solaris Studio documentation lead, Richard Friedman. Email him at
Richard dot Friedman at Oracle dot com

When Run Was A Compiler


« April 2014