Getting Started with OpenACC

Originally published at: https://developer.nvidia.com/blog/getting-started-openacc/

This week NVIDIA has released the NVIDIA OpenACC Toolkit, a starting point for anyone interested in using OpenACC. OpenACC gives scientists and researchers a simple and powerful way to accelerate scientific computing without significant programming effort. The toolkit includes the PGI OpenACC Compiler, the NVIDIA Visual Profiler with CPU and GPU profiling, and the new OpenACC Programming…

Obvious question, but will the toolkit be coming to Windows?

Hi Mark. We don't have any immediate plans to release the toolkit for Windows, but we will definitely look into what it'd take to do so. Thanks for asking.

thanks for OpenACC lessons! i find them a great way to learn new tool

there a few mistakes in published code:

1. #pragma acc data copyin(A) create(Anew)

- it should be copy(A) in both examples as stated in the description

2. first example uses correct "Anew[i,j] = f(A[i,j])" code in the first loop while remaining examples use incorrect "A[i,j] = f(Anew[i,j])"

3. can you try to further optimize the code by using two loops: first one computes "Anew[i,j] = f(A[i,j])" and second one computes "A[i,j] = f(Anew[i,j])" - this way you can eliminate copying?

Thanks for catching those and commenting @bulatziganshin:disqus. I've fixed the first two in the post. You're correct that there are other ways to do this operation that avoid the need to do the copy in the second loop nest. I use this code because it's simple to understand and show, but I may pursue changing the code in the future to avoid making the copy, as this is what most applications would do in production.

I am wondering if I can run the OpenACC Toolkit on all NVIDIA GPUs or
only on those that have a Kepler or Fermi architecture? For instance, can I
use the toolkit with my NVIDIA GeForce GTX 750 Ti? This card comes with a
Maxwell architecture and PGI's Cuda Fortran and their OpenACC did not
run on it.

There is anyway to use OpenACC with VM under a Windows host?

Hello, has anything changed with regards to openacc toolkit for windows? I have read that the PGI compiler is compatible with Windows, however the toolkit is not?

I just reached out to the team and there's still no Windows version of the toolkit. The Windows version of PGI does support OpenACC, however, and all of the bonus examples and documentation from the Linux version could be downloaded separately. You should definitely try downloading PGI for Windows with a trial license and if you need an extended trial, please reach out to the PGI support about this.