Converting C or Fortran code into CUDA code can take some time and effort. To simplify this process, a number of directive-based accelerator programming languages have emerged. These languages work by placing compiler directives in the user’s code. Instead of writing CUDA code, the user can write standard C or Fortran code, and the compiler converts it to CUDA at compile time.
Since these directive-based accelerator programming languages are still in their infancy, not all of them provide full debugging support. As a result, Totalview currently only has experimental support for Cray’s OpenMP Accelerator Directives and Cray’s OpenACC Directives. Totalview uses the normal CUDA Debugging Model when debugging programs that have been compiled using these directives.