Short Course on OpenMP in Practice

Sunday, March 21, 1999
9:00 AM-2:00 PM
Room: Executive Salon 3, third floor
Adam's Mark San Antonio-Riverwalk Hotel
San Antonio, Texas

Held in conjunction with the
Ninth SIAM Conference on Parallel Processing for Scientific Computing


Questions? E-mail [email protected]

  SIAM Conferences



Organizer and Instructor

Charles Koelbel
CRPC, Rice University and
Advanced Computational Research Program, National Science Foundation


OpenMP is an emerging standard for programming parallel computers, particularly those with shared-memory architectures. It includes many features intended to simplify the programming task and allow high-level parallelism, including:

  • Parallel loop directives

  • Task parallel constructs
  • PRIVATE and SHARED data declarations

Because most features of OpenMP are extensions of standard sequential language constructs, OpenMP is particularly valuable for incrementally converting existing sequential codes for parallel execution. Because it is so new, however, there is little experience in getting the most out of OpenMP on practical problems.

OpenMP will be an important system for constructing parallel scientific programs for the near-term future. Applied mathematicians will, however, need training to use this exciting system. This course emphasizes practical techniques that can be used in those programs.


This course introduces OpenMP, an emerging standard for programming shared-memory parallel computers. Most of the time will be devoted to the key features of the language:

  • PARALLEL DO - allows parallel loops over data

  • PARALLEL SECTIONS - allows task parallelism
  • PRIVATE / SHARED - control access to data

Approximately half the course will be devoted to extended practical examples. One example will be the conversion of a sequential code to parallel form, while others will show how efficient parallel programs can be constructed from first principles.

Level of Material

  • Introductory 50%

  • Intermediate 25%
  • Advanced 25%

Course Objectives

Attendees will learn:

  • Generally useful parallel programming concepts

  • Specific constructs for programming shared-memory machines
  • Useful techniques for optimizing parallel programs for machines with complex memory hierarchies

Who Should Attend

Computational scientists who need to begin writing scientific programs for shared-memory machines.The course may also be of interest to computer scientists who need information on current trends in parallel processing.

Recommended Background

Essential: Programming experience in Fortran or C
Useful: Knowledge of parallel computing concepts (architecture, data- and task-parallelism, compilers)


Chuck Koelbel has been working at Rice University on compilers and languages for parallel machines since graduating from Purdue in 1990. He is best-known as one of the creators of High Performance Fortran. He is currently a rotator at NSF as the program director for Advanced Computational Research.



8:00 AM Registration

9:00 AM-10:00 AM

  • I. Introduction to Parallel Computing
    A. Parallel Computers
    B. Parallel Languages & Systems
    C. Why OpenMP?

  • II. Basic Parallel Features
    A. Control structures
    B. Data environment
    C. Synchronization
    D. Run-time environment and library

10:00 AM-10:30 Coffee

10:30 AM-12:30 PM

  • III. Designing Programs in OpenMP
    A. Basics
    B. Developing a Parallel Code I
    C. Converting a Sequential Code
    D. Optimization issues

  • IV. (Time Permitting) Recent OpenMP Developments
    A. Combining with HPF
    B. Combining with MPI
    C. Available Debuggers and Tools

12:30 PM-2:00 PM Lunch (For short course registrants only)

2:00 PM Short course adjourns


The short course on OpenMP in Practice will take place in Executive Salon 3 on the third floor. Coffee breaks will be in Lobby, third floor and lunch will be in Rose Garden Room.

How to Register

Seats are limited. We urge short course participants to register in advance. To register, please complete the Preregistration Form online and send it with your payment to reach SIAM office on or before March 3, 1999.

Registration fee for the short course includes: course notes, final program and abstracts, coffee breaks, and lunch on Sunday, March 21.

PP99 Home


Program Updates

Speaker Index




Maintained by Maryann M. Donaghy, [email protected]
Created: TJF, 10/26/98 MMD Updated: 1/29/99