picongpu
picongpu copied to clipboard
[WIP] NERSC Perlmutter system profile
Introduces a profile and batch script template for the Perlmutter system at NERSC.
CAVEATS:
At the moment the compilation of the dependencies (Boost, HDF5, ADIOS2, openPMD, PNGwriter) and PIC requires the following variables to be defined for CMake:
MPI_CXX_COMPILER, MPI_C_COMPILER, MPI_CXX_HEADER_DIR, MPI_C_HEADER_DIR, MPI_mpi_gnu_91_LIBRARY
as:
MPI_CXX_COMPILER=/opt/cray/pe/craype/2.7.15/bin/CC
MPI_C_COMPILER=/opt/cray/pe/craype/2.7.15/bin/cc
MPI_CXX_HEADER_DIR=/opt/cray/pe/mpich/8.1.15/ofi/gnu/9.1/include
MPI_C_HEADER_DIR=/opt/cray/pe/mpich/8.1.15/ofi/gnu/9.1/include
MPI_mpi_gnu_91_LIBRARY=/opt/cray/pe/mpich/8.1.15/ofi/gnu/9.1/lib/libmpi_gnu_91.so
alternatively MPI_CXX_COMPILER=$(which CC)
and MPI_C_COMPILER=$(which cc)
.
And specifically for PIC: ALPAKA_CXX_STANDARD=17
otherwise, using the Cray compiler, the compilation will fail due to an incompatibility with openPMD.
ALPAKA_CXX_STANDARD=17
is standard, there should be no requirement to set it explicitly.
Unfortunately using this toolchain I obtain a default of 14
instead of 17
, which results in compatibility problems with openPMD.
@Anton-Le What is the status of this pull request?
@Anton-Le could you please finish the PR!
@Anton-Le Ping!
@Anton-Le What is the status?
I will close this pull request due to inactivity. @pordyna Could you provide your setup as a pull request?