OpenMP News
»OpenMP At SC09
The OpenMP team was at SC09 in Portland OR, in Booth #2985
Thanks to everyone who came by the booth to say hello!
»IWOMP 2009 Presos Now Available
The 2009 International Workshop on OpenMP concluded last week in Dresden, Germany.
Many of the presentations are now available in PDF from the IWOMP website:
- An Overview of OpenMP 3.0 Ruud van der Pas, Sun Microsystems
- OpenMP Under The Hood Lei Huang, University of Houston
- Tasking in OpenMP 3.0 Alejandro Duran, Barcelona Supercomputing Center
- OpenMP In The Real World Christian Terboven/Dieter an Mey, RWTH Aachen University
- Sun Studio OpenMP Compilers and Tools Ruud van der Pas, Sun Microsystems
- OpenMP And Performance Ruud van der Pas, Sun Microsystems
- Is OpenMP the right approach for future generation architectures? Jose Duato Marin, Universidad Politecnica de Valencia
- Providing Observability for OpenMP 3.0 Applications Yuan Lin, Oleg Mazurov, Sun Microsystems
- A Microbenchmark Suite for Mixed-mode OpenMP/MPI J.Mark Bull, James P. Enright, Nadia Ameer
- Performance Profiling for OpenMP Tasks Karl Fuerlinger and David Skinner
- Use of Cluster OpenMP with the Gaussian Quantum Chemistry Code: A Preliminary Performance Analysis Rui Yang, Jie Cai, Alistair Rendell, Ganesh Venkateshwara
- Scalability of Gaussian 03 on SGI Altix: The Importance of Data Locality on CC-NUMA Architecture Roberto Gomperts, Michael Frisch, Jean-Pierre Panziera
- Current developments in the Language Committee: the Future of OpenMP Bronis de Supinski, LLNL
- Tile Reduction: the First Step Towards Tile Aware Parallelization in OpenMP Ge Gan, Xu Wang, Joseph Manzano, Guang R. Gao
- A Proposal to Extend the OpenMP Tasking Model for Heterogeneous Architectures Eduard Ayguadé, Rosa M. Badia, Daniel Cabrera, Alejandro Duran, Marc Gonzalez, Francisco Igual, Daniel Jimenez, Jesus Labarta, Xavier Martorell, Rafael Mayo, Jose M. Perez, Enrique S. Quintana-Ort
- Identifying Inter-Task Communication in a Shared Memory Programming Model Per Larsen, Sven Karlsson, Jan Madsen
- Can OpenMP be extended to deal with Hardware Accelerator? François Bodin, CAPS Entreprise
- Evaluating OpenMP 3.0 Run Time Systems on Unbalanced Task Graphs Stephen Olivier, Jan Prins
- Dynamic Task and Data Placement over NUMA Architectures: an OpenMP Runtime Perspective François Broquedis, Nathalie Furmento, Brice Goglin, Raymond Namyst, Pierre-André Wacrenier
- Scalability evaluation of barrier algorithms and OpenMP applications Ramachandra Nanjegowda, Oscar Hernandez, Barbara Chapman
- Parallel Simulation of Bevel Gear Cutting Processes with OpenMP Tasks Paul Kapinos, Dieter an Mey
- Evaluation of Multicore Processor for Embedded Systems by Parallel Benchmark Program using OpenMP Toshihiro Hanawa, Mitsuhisa Sato, Jinpil Lee, Takayuki Imada, Hideaki Kimura, Taisuke Boku
»Download Book Examples and Discuss
Ruud van der Pas, one of the authors of the book Using OpenMP - - Portable Shared Memory Parallel Programming by Chapman, Jost, and van der Pas, has made 41 of the examples in the book available for download and your use.
These source examples are available as a free download »here (a zip file) under the BSD license. Each source comes with a copy of the license. Please do not remove this.
You are encouraged to try out these examples and perhaps use them as a starting point to better understand and perhaps further explore OpenMP.
Each source file constitutes a full working program. Other than a compiler and run time environment to support OpenMP, nothing else is needed.
With the exception of one example, there are no source code comments.
Not only are these examples very straightforward, they are also discussed in the book.
To make things easier, each source directory has a make file called “Makefile”. This file can be used to build and run the examples in the specific directory. Before you do so, you need to activate the appropriate include line in file Makefile. There are include files for several compilers and Unix based Operating Systems (Linux, Solaris and Mac OS to precise).
These files have been put together on a best effort basis. The User’s Guide that is bundled with the examples explains this in more detail.
Also, we have created a new forum, »Using OpenMP - The Book and Examples, for discussion and feedback.
»OpenMP 3.0 Fortran Summary Card
A summary card of the OpenMP 3.0 Fortran API Specifications is now available:
»OpenMP 3.0 Fortran API Summary Card (revised March 2009) (PDF)
Also: »Version 3.0 Summary Card C/C++ (November, 2008) (PDF)
»Demystifying Persistent Myths About OpenMP
Ruud van der Pas (Sun Microsystems) debunks some of the myths about OpenMP he found in a recent article on the web about parallel programming.
Unfortunately, the September 5, 2008 blog titled “The OpenMP Concurrency Platform“ written by Charles Leiserson from Cilk Arts repeats some of the persistent myths regarding OpenMP.
Certain comments made also may give rise to a somewhat distorted view on OpenMP for those readers that are less into the aspects of parallel programming. For example, the statement that OpenMP is most suitable for loops only. This has never been the case and certainly the introduction of the flexible and powerful tasking concept in OpenMP 3.0 (released May 2008) is a big step forward.
Read »Ruud’s blog entry
»Parallel Programming at Aachen - March 23-27
RWTH - Aachen, Germany will be holding it’s annual conference and classes on parallel programming March 23-27. Renamed Parallel Programming in Computational Engineering and Science (PPCES) March 2009 it will will cover parallel programming using OpenMP and MPI in Fortran and C/C++ on Linux, Windows and Solaris platforms.
Related events will include a presentation by Horst Simon (University of California Berkeley) on Monday morning on Future Directions in High Performance Computing 2009-2018.
More information including a schedule is on their »website.
»Article - Design of OpenMP Tasks
The March 2009 edition of the IEEE Transactions on Parallel and Distributed Systems features an article on the design of tasks in OpenMP by Eduard Ayguadé, Nawal Copty, Alejandro Duran, Jay Hoeflinger, Yuan Lin, Federico Massaioli, Xavier Teruel, Priya Unnikrishnan, Guansong Zhang.
OpenMP has been very successful in exploiting structured parallelism in applications. With increasing application complexity, there is a growing need for addressing irregular parallelism in the presence of complicated control structures. This is evident in various efforts by the industry and research communities to provide a solution to this challenging problem. One of the primary goals of OpenMP 3.0 is to define a standard dialect to express and efficiently exploit unstructured parallelism. This paper presents the design of the OpenMP tasking model by members of the OpenMP 3.0 tasking sub-committee which was formed for this purpose. The paper summarizes the efforts of the sub-committee (spanning over two years) in designing, evaluating and seamlessly integrating the tasking model into the OpenMP specification. In this paper, we present the design goals and key features of the tasking model, including a rich set of examples and an in-depth discussion of the rationale behind various design choices. We compare a prototype implementation of the tasking model with existing models, and evaluate it on a wide range of applications. The comparison shows that the OpenMP tasking model provides expressiveness, flexibility, and huge potential for performance and scalability.
The article is currently available from the »IEEE website in PDF.
»OpenMP Overview - Slides and Video
Ruud van der Pas of Sun Microsystems recently gave an overview of OpenMP at Nanyang Technological University in Singapore.
The slides are now available: »An Overview of OpenMP - Ruud van der Pas - Sun Microsystems
Here is the video of the talk: