Introduction to OpenMP

What is OpenMP

  • Fork-Join model of parallel execution
    • Execution starts with one thread of control - master thread
    • Parallel regions fork off new threads on entry - team thread
    • Threads join back together at the end of the region - only master thread continues


  • Portable
    • Definition by Parallel Computing Forum
    • Fortran interface available for over a year
    • C and C++ interface announced just a few months ago





  • Shared-memory architectures
    • (Some) Memory can be accessed by all threads