What is OpenMP

  • OpenMP provides high-level thread programming
  • Multiple cooperating threads are allowed to run simultaneously
  • Threads are created and destroyed dynamically in a fork-join pattern
    • An OpenMP program consists of a number of parallel regions
    • Between two parallel regions there is only one master thread
    • In the beginning of a parallel region, a team of new threads is spawned
  • The newly spawned threads work simultaneously with the master thread
  • At the end of a parallel region, the new threads are destroyed

Many good tutorials online and excellent textbook

  1. Using OpenMP, by B. Chapman, G. Jost, and A. van der Pas
  2. Many tutorials online like OpenMP official site