CarpetX icon indicating copy to clipboard operation
CarpetX copied to clipboard

CarpetX: avoid features not supported by nvhpc's compiler

Open rhaas80 opened this issue 11 months ago • 4 comments

This avoids two features not supported by nvhpc version nvc++ 24.3 ("nvc++ 24.3-0 linuxarm64 target on aarch64 Linux -tp neoverse-v2"):

  • does not support custom OpenMP reductions
  • RANK() is not a F90 function but a GNU extension

The former is the more annoying fix since I added an #ifdef. If one consider the possible loss in speed due to using a #pragma omp critical instead of (possibly) are more optimal implementation via #pragma reduction(...) negligible then one can remove the #ifdef.

rhaas80 avatar Jan 16 '25 22:01 rhaas80

I confirm the this change make CarpetX compile on vista with nvc compilers

lwJi avatar Jan 16 '25 23:01 lwJi

Alright, I updated the C++ stuff with auto &foo = bar and ran through clang-format-19 which (predictably) indented lots of code :-(

rhaas80 avatar Jan 17 '25 01:01 rhaas80

@lwJi please click on "approve" if you are happy with the proposed change.

rhaas80 avatar Jan 17 '25 01:01 rhaas80

@lwJi please click on "approve" if you are happy with the proposed change.

I can't find a "approve" button on my side

lwJi avatar Jan 17 '25 01:01 lwJi

@eschnett are you happy with the changes I had implemented? This would still be good to merge in.

rhaas80 avatar Jul 03 '25 16:07 rhaas80