1*9d22c58dSStefano Zampini#!/usr/bin/python3 2*9d22c58dSStefano Zampini 3*9d22c58dSStefano Zampini#As suggested from OLCF staff this is my rc file 4*9d22c58dSStefano Zampini# 5*9d22c58dSStefano Zampini#module load craype-accel-amd-gfx908 6*9d22c58dSStefano Zampini#module load PrgEnv-cray 7*9d22c58dSStefano Zampini#module load rocm 8*9d22c58dSStefano Zampini#export PE_MPICH_GTL_DIR_amd_gfx908="-L/opt/cray/pe/mpich/8.1.4/gtl/lib" 9*9d22c58dSStefano Zampini#export PE_MPICH_GTL_LIBS_amd_gfx908="-lmpi_gtl_hsa" 10*9d22c58dSStefano Zampini#export MPIR_CVAR_GPU_EAGER_DEVICE_MEM=0 11*9d22c58dSStefano Zampini#export MPICH_GPU_SUPPORT_ENABLED=1 12*9d22c58dSStefano Zampini#export MPICH_SMP_SINGLE_COPY_MODE=CMA 13*9d22c58dSStefano Zampini# 14*9d22c58dSStefano Zampini 15*9d22c58dSStefano Zampiniif __name__ == '__main__': 16*9d22c58dSStefano Zampini import sys 17*9d22c58dSStefano Zampini import os 18*9d22c58dSStefano Zampini sys.path.insert(0, os.path.abspath('config')) 19*9d22c58dSStefano Zampini import configure 20*9d22c58dSStefano Zampini configure_options = [ 21*9d22c58dSStefano Zampini # When we compile HIP code in PETSc, we eventually include mpi.h. 22*9d22c58dSStefano Zampini # MPI include folder is hidden by cc/CC and PETSc does not detect it 23*9d22c58dSStefano Zampini '--HIPPPFLAGS=-I'+os.environ['MPICH_DIR']+'include', 24*9d22c58dSStefano Zampini # Needed by MPICH: 25*9d22c58dSStefano Zampini # ld.lld: error: /opt/cray/pe/mpich/8.1.4/gtl/lib/libmpi_gtl_hsa.so: undefined reference to hsa_amd_memory_pool_allocate 26*9d22c58dSStefano Zampini # and many others 27*9d22c58dSStefano Zampini '--LDFLAGS=-L'+os.environ['ROCM_PATH'],+'lib -lhsa-runtime64', 28*9d22c58dSStefano Zampini '--PETSC_ARCH=arch-spock-debug', 29*9d22c58dSStefano Zampini '--download-magma=1', 30*9d22c58dSStefano Zampini '--with-64-bit-indices=0', 31*9d22c58dSStefano Zampini '--with-cc=cc', 32*9d22c58dSStefano Zampini '--with-cxx=CC', 33*9d22c58dSStefano Zampini '--with-debugging=1', 34*9d22c58dSStefano Zampini '--with-fc=ftn', 35*9d22c58dSStefano Zampini '--with-fortran-bindings=0', 36*9d22c58dSStefano Zampini '--with-hip=1', 37*9d22c58dSStefano Zampini '--with-hipc=hipcc', 38*9d22c58dSStefano Zampini '--with-magma-fortran-bindings=0', 39*9d22c58dSStefano Zampini '--with-magma-gputarget=gfx908', 40*9d22c58dSStefano Zampini '--with-mpiexec=srun -p ecp -N 1 -A csc314 -t 00:10:00', 41*9d22c58dSStefano Zampini '--with-precision=double', 42*9d22c58dSStefano Zampini '--with-scalar-type=real', 43*9d22c58dSStefano Zampini ] 44*9d22c58dSStefano Zampini configure.petsc_configure(configure_options) 45