Parallel Programming using OpenMP

This page is under construction and updates are being made on a regular basis.

OpenMP (Open Multi-Processing) is a widely-used API that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran. It provides a set of compiler directives, library routines, and environment variables that allow developers to write parallel code for multi-core and multi-processor systems.

Programming CPUs using OpenMP

Programming GPUs using OpenMP – OpenMP Offload

  • Hello World example
  • Maximizing the GPU compute utilization
    • Teams Construct
    • Distribute Construct
  • Optimizing the data transfers
    • Target data Construct
    • Target update Construct


Mandar Gurav Avatar

Mandar Gurav

Parallel Programmer, Trainer and Mentor


If you are new to Parallel Programming you can start here.



Beginner CUDA Fortran Hello World Message Passing Interface MPI Nvidia Nsight Systems NVPROF OpenACC OpenACC Fortran OpenMP PGI Fortran Compiler Profiling Vector Addition


Popular Categories