Accelerator "cache" cluase not working with PGI 12

Dear Support,

We have some Fortran code we are trying to accelerator via directives. The code used to compile and run fine when using an older version of the compiler PGI 11.8 with cuda 3.2. We upgraded to the latest PGI 12.4 with cuda 4.0 and the code no longer compiles.

It gives the below error:
PGF90-S-0034-Syntax error at or near identifier cache

The array of concern “vv” is reflected:
!$acc reflected(vv)

The directive line giving the error is the following:
!$acc do parallel vector(16) kernel cache(vv)

If I take out the cache clause it compiles fine.

According to the PGI Accelerator Programming Model v 1.3, the cache clause is still valid.

Any idea what might be wrong here? Is the cache clause still supported with PGI 12.4?

Thank you for your help.

Mohamad Sindi
EXPEC Advanced Research Center
Saudi Aramco

Hi Mohamad,

Thank you for the report. This is a known compiler error in 12.4 which will be fixed in the upcoming 12.5 release.

Best Regards,
Mat