Difference between revisions of "OpenMP"

From HPC Wiki
Jump to navigation Jump to search
()
()
Line 9: Line 9:
 
{
 
{
 
   #pragma omp parallel
 
   #pragma omp parallel
   printf("Hallo Welt!\n");
+
   {
 +
    printf("Hallo Welt!\n");
 +
  }
  
 
   return 0;
 
   return 0;

Revision as of 12:14, 13 April 2018

OpenMP is an implementation of Shared Memory parallelization. Information of how to run an existing OpenMP program can be found in the How_to_Use_OpenMP Section.

General

OpenMP programming is mainly done with pragmas:

#include <stdio.h>

int main(int argc, char* argv[])
{
  #pragma omp parallel
  {
    printf("Hallo Welt!\n");
  }

  return 0;
}

interpreted by a normal compiler as comments, these will only come into effect when a specific compiler (options) is utilized like detailed here.

Please check the more detailed tutorials in the References.

References

Introduction to OpenMP from PPCES (@RWTH Aachen) Part 1: Introduction

Introduction to OpenMP from PPCES (@RWTH Aachen) Part 2: Tasking in Depth

Introduction to OpenMP from PPCES (@RWTH Aachen) Part 3: NUMA & SIMD

Introduction to OpenMP from PPCES (@RWTH Aachen) Part 4: Summary