OpenACC: a new Standard for Parallel Computing


OpenACC is a new standard for parallel programming developed by NVIDIA, PGI (the Portland Group) and Cray and unveiled during the SC11 (conference for high performance computing).

OpenACC is not a new language. It allows programmers to define which areas of code (C++, Fortran) to accelerate using directives like this one:

float f(int n, float* v1, float* v2)
  int i;
  float sum = 0;
  <b>#pragma acc region for</b>
  for (i=0; i&lt;n; i++)
    // Do some heavy computations here!
  return sum;

Currently, only NVIDIA CUDA accelerators will take advantage of OpenACC.

Useful links:



  • Ahmad Saleem

    Kick this and we can see a new era of computing:
    “Currently, only NVIDIA CUDA accelerators will take advantage of OpenACC.”
    nvidia is becoming more and more like Apple.

    BTW I own nvidia card. So no AMD fanboyism.

  • Ashkan

    This is most probably a move to counter Microsoft’s C++ AMP. Why can’t we settle down on a single standard that all venders contribute to and support, instead of wasting tens of thousands of hours of engineering time on developing similar standards and toolset parallel to the ones that already exist? So fucking inefficient, not to mention cruel to the end users.

  • Wolfie

    Looks like OpenMP. Why won’t vendors get behind a single standard, all they are doing is slowing adoption?

  • Tom

    Why so many names? :/

  • Leith Bade

    I don’t see why NVIDIA couldn’t just support OpenMP…

    I think NVIDIA just like to make proprietary languages and APIs to that software developers get locked into their hardware.

    It would be interesting to make an OpenCL version.

  • Leith Bade

    Read this:

    It turns out OpenACC is OpenMP, in a sort of beta.
    OpenACC is a subcommittee of OpenMP exploring how to add GPUs to OpenMP.

    Eventually the two standards will be merged.

  • Wolfie

    Well Phew!! That is a weight of my shoulders to know, thanks.

  • Matt

    What does the ACC part stand for? Accelerated cash cow? Please, I can’t find it and it is bugging me.

  • DrBalthar

    Another nVidia standard no one cares about! How many failures do we need to see from nVidia before they finally give up to shovel something down your throat. (Cg, CgFx, PhysX, CUDA all properitary so-called standards)

  • Anon

    IP ban for DrBalthar, please. How many times AMD will screw before they will go bankrupt? 😀 HD6000 slower than GTX500, Shitdozer failed on games, software, servers performance, Fusion failed everywhere.

  • jarik

    good point Wolfie, thanks :).