HPC Magazine - OpenACC 2.0 - The new data management features

Listing 4: Multidimensional arrays offloading in OpenACC v2.0.


void doit( size_t nb, struct Value * data[nb] ) 
{   
  #pragma acc parallel copy( data[0:nb][0:1] )
  {  
    for (size_t i=0;i<nb;++i) 
    {       
      for (size_t j=i+1;j<nb;++j) 
      {
        work_on_a_pair( data[j], data[i] ) ;  
      }
    } 
  }
}