Question

According to NVIDIA website:

"The CUDA Toolkit complements and fully supports programming with OpenACC directives."

Does it means OpenACC programs (pargma and API) can be compiled with nvcc compiler? Or it means only runtime routine calls are supported?

Unfortunately, I cannot install CUDA Toolkit 5.0 these days to get my answer. Thanks!

Was it helpful?

Solution

To compile a program using OpenACC directives, you need to use an OpenACC compiler - currently that means Cray, PGI or CAPS.

Parts of the CUDA Toolkit are used by the OpenACC compilers, depending on the implementation they can use various components such as ptxas to assemble PTX to the machine code. The Toolkit also includes libraries such as cuBLAS/cuFFT/cuSPARSE etc. which can interoperate with OpenACC so that you can use both libraries and OpenACC in the same app - you can also interoperate with CUDA C/C++.

nvcc itself is not an OpenACC compiler.

OTHER TIPS

There exists accULL, The OpenACC research implementation (C only, OpenACC 1.0).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top