NVCC 5.0 and OpenACC
Asked Answered
E

2

7

According to NVIDIA website:

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

Does this mean 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 atm to get my answer. Thanks!

Electrophysiology answered 4/11, 2012 at 7:34 Comment(2)
At the present time you need an openACC compliant compiler from CAPS, PGI, or Cray. The CUDA toolkit by itself does not allow you to compile directives.Ocieock
Thanks Robert! The term support at the nvidia page is really confusing!Electrophysiology
S
7

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.

Suicide answered 4/11, 2012 at 13:12 Comment(2)
Note that if you're interested in playing with OpenACC, you can get a 30 day trial (last time I tried it was 15 days renewable once) of the PGI OpenACC compiler here: pgroup.com/account/register.php?openacc_userOsmond
Also note that the NVIDIA Visual Profiler will work with PGI OpenACC compiler generated code. I haven't personally tried Cray or CAPS compilers with nvvp, so can't comment about those.Busy
Y
0

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

Ynez answered 26/3, 2014 at 13:36 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.