OpenACC
OpenACC is a directive-based programming model for parallel computing, designed to simplify the process of accelerating existing code on GPUs and other parallel processors. OpenACC allows developers to annotate sequential code with directives that specify where and how parallelism should be applied. These directives are then interpreted by the compiler, which generates optimized parallel code for the target hardware.
OpenACC is supported by a number of compilers, including NVIDIA HPC SDK, PGI, and Cray. The model is also supported by a growing number of GPU-accelerated libraries, such as cuBLAS and cuDNN.