C++17 parallel algorithmsを使うためにはgcc/10.2.0等新しいバージョンのgccモジュールをロードする必要がございます。
nvhpcモジュールとgcc/10.2.0等を組み合わせてnvc++ -stdpar=gpu等でソースをコンパイルすると以下のようなエラーが発生することがあります。
"/apps/t3/sles12sp2/isv/nvidia/hpc_sdk/Linux_x86_64/21.7/compilers/include-stdpar/thrust/mr/new.h", line 44: error: namespace "std" has no member "align_val_t" "/apps/t3/sles12sp2/isv/nvidia/hpc_sdk/Linux_x86_64/21.7/compilers/include-stdpar/thrust/mr/new.h", line 66: error: namespace "std" has no member "align_val_t" |
このエラーが発生する場合は以下をお試し下さい。
$ makelocalrc -x -d . -gcc `which gcc` -gpp `which g++` $ export NVLOCALRC=$PWD/localrc |