OpenACC - Open Accelerators - is a directive-based high-level programming model similar to the OpenMP but intended for accelerators. The parallel regions are decorated with compiler directives that enable portability of the code to a wide range of accelerators. The OpenACC accelerator model abstracts multiple levels of parallelism of processors and the hierarchy of memories. It allows offloading both data and computation from a host device to accelerator device, where the devices can be different but even the same architectures with separate or shared memory space.
Related report(s): SOMA