OpenACC

OpenACC (Open ACCelerators) is a standardized compiler extension to C, C++, and Fortran to offload compute tasks to various accelerators (GPUs, etc.) to allow parallelization in heterogeneous systems (e.g. CPU + GPU). It is deliberately similar to OpenMP. Note that in contrast to MPI, OpenACC is only for parallelization within a node, NOT between nodes.

The following compilers that support OpenACC for C, C++, and/or Fortran and the compiler options to enable it are given in the table below.

CompilerOptionCPU Offload OptionGPU Offload Option
Nvidia HPC Compilers, successor to the PGI compilers-acc-acc=multicore-acc=gpu