Advanced OpenMP

September 3, 2007
RWTH Aachen University
Lecture Hall of Faculty of Civil Engineering
Organizer: Dieter an Mey

Description: OpenMP is an Application Programming Interface (API) for a portable, scalable programming model for developing shared-memory parallel applications in Fortran, C, and C++.

So far OpenMP was predominantly employed on large shared memory machines. With the growing number of cores on all kinds of processor chips, with additional OpenMP implementations e.g. the GNU and Visual Studio compilers, OpenMP is available for use by a rapidly growing, broad community. Upcoming multicore architectures make the playground for OpenMP programs even more diverse. The memory hierarchy will grow, with more caches on the processor chips.

Whereas applying OpenMP to Fortran and C programs on machines with a flat memory (UMA architecture) is straight forward in many cases, there are quite some pitfalls when using OpenMP for C++ codes on one hand and on cc-NUMA architectures on the other hand. The increasing diversity of multicore processor architectures further introduces more aspects to be considered for obtaining good scalability.

Draft Agenda:

  1. Ruud van der Pas, Sun: "Introduction into OpenMP Programming"
  2. Ruud van der Pas, Sun: "Sun Tools for OpenMP Programming"
  3. Larry Meadows, Intel: "Intel Tools for OpenMP Programming"
  4. Christian Terboven, RWTH: "C++ and OpenMP"
  5. Dieter an Mey, RWTH: "OpenMP Case Studies"
  6. Barbara Chapman, University of Houston: "How OpenMP is Compiled"

MPI Application Performance on the IBM Blue Gene Architecture

September 3, 2007
Forschungszentrum Jülich
John von Neumann Institute for Computing
Organizer: Kirk Jordan (IBM), Bill Gropp (Argonne), Bernd Mohr, Brian Wylie (Jülich)

Description: Blue Gene was designed as a special purpose system, offering unprecedented computing performance coupled with very low power consumption and cost for a limited set of applications. Adoption has however become more widespread and Blue Gene is now being used in a relatively diverse range of scientific disciplines. Exploring the range and type of application that can make effective use of these systems, and the relevant architectural features influencing performance, is therefore highly topical.

This tutorial will focus on the performance of a series of applications and consider the techniques required to achieve optimal performance and scaling on the Blue Gene architecture. We will discuss the factors and bottlenecks that influence performance and cover techniques for compiler, memory and communication optimization.

Attendees will have the opportunity to gain hands on experience through a series of practical sessions on Forschungszentrum Jülich's Blue Gene system.


  1. Bernd Mohr, Michael Hennecke: "Unfolding Blue Gene"
  2. Kirk Jordan: "Application Porting and Tuning"
  3. Bill Gropp: "Programming in MPI for Performance"
  4. Brian Wylie: "Blue Gene Performance Tools"

Forschungszentrum Jülich
D-52425 Jülich