...
No Format |
---|
$ module load prgenv/gnu load$ prgenv gnu (EC_COMPILER_FAMILY, EC_COMPILER_VERSION, FC, F90, F77, CC, CXX, I_MPI_CC, I_MPI_CXX, I_MPI_F90) load gcc 8.4.0 (GCC_DIR, GCC_VERSION, PATH, MANPATH, INFOPATH)module list Currently Loaded Modules: 1) gcc/8.3.1 2) prgenv/gnu |
You may then load a different version of the compiler if you wish to do so.
...
No Format |
---|
$ module load prgenv/gnu $ module load prgenvfftw $ gnuecho (EC_COMPILER_FAMILY, EC_COMPILER_VERSION, FC, F90, F77, CC, CXX, I_MPI_CC, I_MPI_CXX, I_MPI_F90) load gcc 8.4.0 (GCC_DIR, GCC_VERSION, PATH, MANPATH, INFOPATH) $ module load fftw load fftw 3.3.8 (FFTW_DIR, FFTW_VERSION, FFTW_INCLUDE, FFTW_LIB, FFTWF_LIB, PATH, MANPATH, INFOPATH) $FFTW_DIR /usr/local/apps/fftw/3.3.8/GNU/8.4 $ module load prgenv/intel Due to MODULEPATH changes, the following have been reloaded: 1) fftw/3.3.8 The following have been reloaded with a version change: 1) prgenv/gnu => prgenv/intel $ module list Currently Loaded Modules: 1) intel-mkl/19.0.5 2) intel/19.0.5 3) prgenv/intel 4) fftw/3.3.8 $ echo $FFTW_DIR /usr/local/apps/fftw/3.3.8/GNUINTEL/8.4 $ module load prgenv/intel unload prgenv gnu (EC_COMPILER_FAMILY, EC_COMPILER_VERSION, FC, F90, F77, CC, CXX, I_MPI_CC, I_MPI_CXX, I_MPI_F90) unload gcc 19.0 |
Multiple compilers in the same prgenv
It is possible to have more than one compiler loaded in parallel, but all the tools and libraries will be loaded based on the active prgenv.
No Format |
---|
$ module load prgenv/gnu $ module load intel $ module load fftw $ module list Currently Loaded Modules: 1) gcc/8.4.0 (GCC_DIR, GCC_VERSION, PATH, MANPATH, INFOPATH) unload fftw 3.3.8 (FFTW_DIR, FFTW_VERSION, FFTW_INCLUDE, FFTW_LIB, FFTWF_LIB, PATH, MANPATH, INFOPATH) load prgenv intel (EC_COMPILER_FAMILY, EC_COMPILER_VERSION, FC, F90, F77, CC, CXX, I_MPI_CC, I_MPI_CXX, I_MPI_F90) load intel-mkl 19.0.5 (MKL_VERSION, CPATH, LD_LIBRARY_PATH, PKG_CONFIG_PATH) load intel 19.0.5 (INTEL_DIR, INTEL_VERSION, PATH, CPATH, LD_LIBRARY_PATH, MANPATH and many others) load fftw 3.3.8 (FFTW_DIR, FFTW_VERSION, FFTW_INCLUDE, FFTW_LIB, FFTWF_LIB, PATH, MANPATH, INFOPATH) Due to MODULEPATH changes, the following have been reloaded: 1) fftw/3.3.8 The following have been reloaded with a version change: 1) prgenv/gnu => prgenv/intel $ module list Currently Loaded Modules: 1) intel-mkl/19.0.5 2) intel/19.0.5 3) prgenv/intel 4) fftw/3.3.8 $ echo $FFTW_DIR /usr/local/apps/fftw/3.3.8/INTEL/19.0 |
Multiple compilers in the same prgenv
It is possible to have more than one compiler loaded in parallel, but all the tools and libraries will be loaded based on the active prgenv.
No Format |
---|
$ module load prgenv/gnu
load prgenv gnu (EC_COMPILER_FAMILY, EC_COMPILER_VERSION, FC, F90, F77, CC, CXX, I_MPI_CC, I_MPI_CXX, I_MPI_F90)
load gcc 8.4.0 (GCC_DIR, GCC_VERSION, PATH, MANPATH, INFOPATH)
$ module load intel
load intel-mkl 19.0.5 (MKL_VERSION, CPATH, LD_LIBRARY_PATH, PKG_CONFIG_PATH)
load intel 19.0.5 (INTEL_DIR, INTEL_VERSION, PATH, CPATH, LD_LIBRARY_PATH, MANPATH and many others)
$ module load fftw
load fftw 3.3.8 (FFTW_DIR, FFTW_VERSION, FFTW_INCLUDE, FFTW_LIB, FFTWF_LIB, PATH, MANPATH, INFOPATH)
$ module list
Currently Loaded Modules:
1) gcc/8.4.0 2) prgenv/gnu 3) intel-mkl/19.0.5 4) intel/19.0.5 5) fftw/3.3.8
$ gcc --version
gcc (ECMWF) 8.4.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ icc --version
icc (ICC) 19.0.5.281 20190815
Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
$ echo $FFTW_DIR
/usr/local/apps/fftw/3.3.8/GNU/8.4 |
The expert prgenv (experimental)
2) prgenv/gnu 3) intel-mkl/19.0.5 4) intel/19.0.5 5) fftw/3.3.8
$ gcc --version
gcc (ECMWF) 8.4.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ icc --version
icc (ICC) 19.0.5.281 20190815
Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
$ echo $FFTW_DIR
/usr/local/apps/fftw/3.3.8/GNU/8.4 |
The expert prgenv (experimental)
Warning |
---|
This prgenv is experimental. It |
Warning |
This prgenv is experimental. It may be changed or deleted in the future: use at your own risk |
...
No Format |
---|
$ module load prgenv/expert load prgenv expert $ module avail expert -------------------------------------------------------------------------------------- Global Aliases --------------------------------------------------------------------------------------- pa -> prgenv/amd pe -> prgenv/expert pg -> prgenv/gnu pi -> prgenv/intel pp -> prgenv/pgi ------------------------------------------------------------------------- /usr/local/apps/modulefiles/lmod/prgenvs -------------------------------------------------------------------------- prgenv/expert (E,L,e) --------------------------------------------------------------------- /usr/local/apps/modulefiles/lmod/flavours/expert ---------------------------------------------------------------------- boost/1.61.0:gnu:4.8.5 hpcx-openmpi/2.6.0:gnu:8.4 netcdf4-parallel/4.6.2:intel:19.0:ompi:3.1 (D) boost/1.61.0:gnu:4.8.4 5 hpcx-openmpi/2.6.0:gnu:98.34 netcdf4-parallel/4.6.2:gnu:4.8:intel:19.0:ompi:3.1 (D) boost/1.61.0:gnu:98.34 hpcx-openmpi/2.6.0:intelgnu:19.09.3 (D) netcdf4/4.6.2:gnu:4.8.4 boost/1.61.0:intelgnu:19.09.3 (D) intelhpcx-mpiopenmpi/182.6.0.4:gnuintel:419.80 (D) netcdf4/4.6.2:gnu:98.34 fftwboost/31.361.80:gnuintel:419.80 (D) intel-mpi/18.0.4:gnu:4.8.4 netcdf4/4.6.2:intel:19.0 (D):gnu:9.3 fftw/3.3.8:gnu:4.8.4 intel-mpi/18.0.4:gnu:98.34 openblasnetcdf4/04.36.92:gnuintel:4.819.0 (D) fftw/3.3.8:gnu:98.34 intel-mpi/18.0.4:intelgnu:18.09.3 openblas/0.3.9:gnu:4.8.4 fftw/3.3.8:intelgnu:19.09.3 (D) intel-mpi/18.0.4:intel:1918.0 openblas/0.3.9:gnu:98.34 hdf5-parallelfftw/1.10.4:gnu:43.3.8:impiintel:19.0 (D) intel-mpi/1918.0.54:gnuintel:4.8 19.0 openblas/0.3.9:intelgnu:19.0 (D)9.3 hdf5-parallel/1.10.4:gnu:4.8:ompiimpi:319.1 0 intel-mpi/19.0.5:gnu:4.8.4 openmpiopenblas/0.3.1.4.3:gnu:8.49:intel:19.0 (D) hdf5-parallel/1.10.4:gnu:4.8.4:hpcxompi:23.61 intel-mpi/19.0.5:gnu:98.34 openmpi/3.1.4.3:gnu:98.34 hdf5-parallel/1.10.4:gnu:8.4:impihpcx:192.06 intel-mpi/19.0.5:intelgnu:18.0 9.3 openmpi/3.1.4.3:intel:19.0 (D)openmpi/3.1.4.3:gnu:9.3 hdf5-parallel/1.10.4:gnu:8.4:ompiimpi:319.10 intel-mpi/19.0.5:intel:1918.0 (D) parmetisopenmpi/43.01.3:gnu:4.83:impi:19.0intel:19.0 (D) hdf5-parallel/1.10.4:gnu:98.34:hpcxompi:23.61 netcdf4intel-parallelmpi/419.60.25:gnu:4.8:impi:intel:19.0 (D) parmetis/4.0.3:gnu:4.8:ompiimpi:319.10 hdf5-parallel/1.10.4:gnu:9.3:impihpcx:192.06 netcdf4-parallel/4.6.2:gnu:4.8:ompiimpi:319.1 0 parmetis/4.0.3:gnu:4.8.4:hpcxompi:23.61 hdf5-parallel/1.10.4:gnu:9.3:ompiimpi:319.10 netcdf4-parallel/4.6.2:gnu:4.8.4:hpcxompi:23.61 parmetis/4.0.3:gnu:8.4:impihpcx:192.06 hdf5-parallel/1.10.4:intelgnu:199.03:impiompi:19.03.1 netcdf4-parallel/4.6.2:gnu:8.4:impihpcx:192.06 parmetis/4.0.3:gnu:8.4:ompiimpi:319.10 hdf5-parallel/1.10.4:intel:19.0:ompiimpi:319.10 (D) netcdf4-parallel/4.6.2:gnu:8.4:ompiimpi:319.10 parmetis/4.0.3:gnu:98.34:hpcxompi:23.61 hdf5-parallel/1.10.4:gnu:4.8 :intel:19.0:ompi:3.1 (D) netcdf4-parallel/4.6.2:gnu:98.34:hpcxompi:23.61 parmetis/4.0.3:gnu:9.3:impihpcx:192.06 hdf5/1.10.4:gnu:4.8.4 netcdf4-parallel/4.6.2:gnu:9.3:impihpcx:192.06 parmetis/4.0.3:gnu:9.3:ompiimpi:319.10 hdf5/1.10.4:gnu:98.34 netcdf4-parallel/4.6.2:gnu:9.3:ompiimpi:319.1 0 parmetis/4.0.3:intelgnu:199.03:impiompi:193.01 hdf5/1.10.4:intelgnu:19.09.3 (D) netcdf4-parallel/4.6.2:intelgnu:199.03:impi:19.0ompi:3.1 parmetis/4.0.3:intel:19.0:ompiimpi:3.1 (D) |
Example:
A user wants to use both gcc and intel at the same time, having openblas built for gnu but fftw built for intel:
No Format |
---|
$ module load prgenv/expert load prgenv expert $ module load gcc/8.4 intel/19 fftw/3.3.819.0 hdf5/1.10.4:intel:19.0 (D) netcdf4-parallel/4.6.2:intel:19.0:impi:19.0 parmetis/4.0.3:intel:19.0:ompi:3.1 (D) |
Example:
A user wants to use both gcc and intel at the same time, having openblas built for gnu but fftw built for intel:
No Format |
---|
$ module load prgenv/expert $ module load gcc/8.4 intel/19 fftw/ openblas/0.3.9:gnu:8.4 load gcc 8.4.0 (GCC_DIR, GCC_VERSION, PATH, MANPATH, INFOPATH) load intel-mkl 19.0.5 (MKL_VERSION, CPATH, LD_LIBRARY_PATH, PKG_CONFIG_PATH) load intel 19.0.5 (INTEL_DIR, INTEL_VERSION, PATH, CPATH, LD_LIBRARY_PATH, MANPATH and many others) load fftw 3.3.8:intel:19.0 (FFTW_DIR, FFTW_VERSION, FFTW_INCLUDE, FFTW_LIB, FFTWF_LIB, PATH, MANPATH, INFOPATH) load openblas /0.3.9:gnu:8.4 (OPENBLAS_DIR, OPENBLAS_VERSION, OPENBLAS_INCLUDE, OPENBLAS_LIB) $ module list Currently Loaded Modules: 1) prgenv/expert (E) 2) gcc/8.4.0 3) intel-mkl/19.0.5 4) intel/19.0.5 5) fftw/3.3.8:intel:19.0 6) openblas/0.3.9:gnu:8.4 Where: E: Experimental $ echo $OPENBLAS_DIR /usr/local/apps/openblas/0.3.9/GNU/8.4 $ echo $FFTW_DIR /usr/local/apps/fftw/3.3.8/INTEL/19.0 |
...