Table of Contents |
---|
Modulefiles
Na računalnom klasteru Isabella koristi se alat Modulefiles za podršku instalacije više različitih verzija istih programa. Za svaku verziju dostupnog programa pripremljen je modul u kojem je definirano koje varijable okoline se postavljaju prilikom aktivacije modula.
Osnovna naredba za rad s Modulefiles je module. Sve izmjene nad varijablama okoline odnose se isključivo za aktivnu sesiju, odnosno za pokrenuti posao. Stoga je module potrebno aktivirati u kod svakog podnošenja posla.
...
Code Block |
---|
module show ime_modula |
Tip |
---|
Svaki znanstveni softver koji je besplatan dostupan je akademskoj i znanstvenoj zajednici. Korisnici mogu zatražiti zahtjev za njegovu instalaciju putem kontakta isabella@srce.hr. |
Prevodioci
Intel
U tablici su navedene dostupne verzije Intel prevodioca prevodilaca i pripadni moduli. Preporuča se korištenje najnovije verzije - Intel 2019.
Verzija | Modul |
---|---|
Intel 2019 | intel/2019 |
Intel 2018 | intel/2018 |
Intel 2017 | intel/2017 |
MPI
U tablici su navedene dostupne verzije knjižnica MPI i pripadni moduli. Preporuča se korištenje verzija pripremljenih s Intel prevodiocima.
...
mpi/mvapich2-2.0-x86_64
mpi/mvapich2-x86_64
...
mpi/mvapich2-intel-2.0-x86_64
mpi/mvapich2-intel-x86_64
...
Za prevođenja pograma koriste se:
- icc - prevodilac za C
- ifort - prevodilac za Fortran.
Instalirane su i matematičke knjižnice Intel MKL (engl. Math Kernel Library) koje se nalaze u $MKLROOT. Upute za korištenje knjižnica: MKL Developer Guide. Parametri za prevođenje u paralelnih aplikacija u Fortranu:
Code Block |
---|
export FFLAGS="-i8 -I${MKLROOT}/include/intel64/ilp64 -I${MKLROOT}/include"
export FCFLAGS=$FFLAGS
export LIBS="${MKLROOT}/lib/intel64/libmkl_blas95_ilp64.a ${MKLROOT}/lib/intel64/libmkl_lapack95_ilp64.a -L${MKLROOT}/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl" |
Koristan link za prevođenje aplikacija s korištenjem knjižnica Intel MKL: Intel MKL link advisor.
Intel oneAPI
Dostupne verzije Intel oneAPI prevodilacaU tablici su navedene dostupne verzije Intel oneAPI prevodilaca i pripadni moduli. Preporuča se korištenje najnovije verzije - Intel 2019.
Verzija | Modul |
---|---|
Intel oneAPI Compilers 2022 | 2022.0.2 |
Za prevođenja pograma koriste se:
- icc - Intel(R) C++ Compiler Classic
- icpc - Intel(R) C Compiler Classic
- ifort - Intel(R) Fortran Compiler Classic
- icx - Intel(R) oneAPI C Compiler
- icpx - Intel(R) oneAPI C++ Compiler
- ifx - Intel(R) Fortran Compiler
- dpcpp - Intel(R) oneAPI DPC++ (Data Parallel C++)
Primjer
MVAPICH2
Primjer pokretanja aplikacije prevedene s MVAPICH2 2.2:
Code Block |
---|
module load mpioneAPI/mvapich2intel-oneapi-intelcompilers-22022.0.2-x86_64 mpirun_rsh icx -np $NSLOTS -hostfile $TMPDIR/machines applikacija |
OpenMPI
Primjer pokretanja aplikacije prevedene s OpenMPI 3:
-version |
GCC
Različite verzije GNU C i C++ prevodilaca su na klaster instalirane iz Software Collections repozitorija.
U tablici su navedene dostupne verzije GNU C i C++ prevodilaca i pripadni moduli.
Verzija | Modul |
---|---|
GCC 7.3.1 | gcc/7 |
GCC 8.2.1 | gcc/8 |
GCC 9.3.1 | gcc/9 |
Primjer:
Code Block | ||
---|---|---|
| ||
module load mpi/openmpi3-intel-x86_64
mpirun -np $NSLOTS -machinefile $TMPDIR/machines applikacija |
Abinit
Abinit je preveden s Intel 2019 i MVAPICH2 2.2 i parametrima:
Code Block |
---|
export LIBMPI=-lmpich
export CC=icc
export CXX=icc
export FC=ifort
export MPIF90=mpif90
export FCFLAGS='-I/opt/intel/mkl/include/intel64/ilp64 -I/opt/intel/mkl/include -I/opt/intel/mkl/include/fftw'
export CFLAGS='-I/opt/intel/mkl/include/intel64/ilp64 -I/opt/intel/mkl/include -I/opt/intel/mkl/include/fftw'
export FFLAGS='-I/opt/intel/mkl/include/intel64/ilp64 -I/opt/intel/mkl/include -I/opt/intel/mkl/include/fftw'
export MPI_LIBS='-L/usr/lib64/mvapich2-intel-2.2/lib -lmpich'
export BLAS_LIBS='-L/opt/intel/mkl/lib/intel64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
export LAPACK_LIBS='/opt/intel/mkl/lib/intel64/libmkl_blas95_ilp64.a /opt/intel/mkl/lib/intel64/libmkl_lapack95_ilp64.a -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
export FFT_LIBS='/opt/intel/mkl/lib/intel64/libmkl_blas95_ilp64.a /opt/intel/mkl/lib/intel64/libmkl_lapack95_ilp64.a -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
export SCALAPACK_LIBS='/opt/intel/mkl/lib/intel64/libmkl_blas95_ilp64.a /opt/intel/mkl/lib/intel64/libmkl_lapack95_ilp64.a -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
./configure --enable-parallel --with-scalapack=intel |
Dostupne verzije su:
...
gcc/8
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-8/root/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-8/root/usr --mandir=/opt/rh/devtoolset-8/root/usr/share/man --infodir=/opt/rh/devtoolset-8/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-8.2.1-20180905/obj-x86_64-redhat-linux/isl-install --disable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC) |
PGI
Dostupan je i PGI Community Edition Version 19.10 prevodioc.
Verzija | Modul |
---|---|
PGI Community Edition Version 19.10 | pgi/19.10 |
Za prevođenja pograma koriste se:
- pgcc - prevodilac za C
- pgc++ - prevodilac za C++
- pgfortran - prevodilac za Fortran.
Primjer:
Code Block | ||
---|---|---|
| ||
module load pgi/19.10
pgcc --version
pgc++ --version
pgfortran --version |
NVIDIA HPC SDK
Knjižnice i prevodioci za NVIDIA GPU-ove. Više informacija možete pronaći na adresi: https://developer.nvidia.com/hpc-sdk.
Verzija | Modul | |
---|---|---|
NVIDIA HPC SDK | 20.7 | nvhpc/20.7 |
21.5 | nvhpc/21.5 | |
22.2 | nvhpc/22.2 | |
NVIDIA HPC SDK bez prevodioca | 20.7 | nvhpc-byo-compiler/20.7 |
21.5 | nvhpc-byo-compiler/21.5 | |
22.2 | nvhpc-byo-compiler/22.2 | |
NVIDIA HPC SDK bez MPI | 20.7 | nvhpc-nompi/20.7 |
21.5 | nvhpc-nompi/21.5 | |
22.2 | nvhpc-nompi/22.2 |
Za prevođenja pograma koriste se:
- nvc - prevodilac za C
- nvc++ - prevodilac za C++
- nvfortran - prevodilac za Fortran.
MPI
U tablici su navedene dostupne verzije knjižnica MPI i pripadni moduli. Preporuča se korištenje verzija pripremljenih s Intel prevodiocima.
Verzija | Prevodilac | Modul |
---|---|---|
MVAPICH2 2.0 | GNU 4.8.5 | mpi/mvapich2-2.0-x86_64 mpi/mvapich2-x86_64 |
MVAPICH2 2.2 | GNU 4.8.5 | mpi/mvapich2-2.2-x86_64 |
MVAPICH2 2.3 | GNU 4.8.5 | mpi/mvapich23-x86_64 |
MVAPICH2 2.0 | Intel 2017 | mpi/mvapich2-intel2017-2.0-x86_64 mpi/mvapich2-intel2017-x86_64 |
MVAPICH2 2.2 | Intel 2017 | mpi/mvapich2-intel2017-2.2-x86_64 |
MVAPICH2 2.2 | Intel 2017, CUDA 9.0 | mpi/mvapich2-intel2017-cuda90-2.2-x86_64 |
MVAPICH2 2.0 | Intel 2018 | mpi/mvapich2-intel2018-x86_64 mpi/mvapich2-intel2018-2.0-x86_64 |
MVAPICH2 2.2 | Intel 2018 | mpi/mvapich2-intel2018-2.2-x86_64 |
MVAPICH2 2.2 | Intel 2018, CUDA 10.0 | mpi/mvapich2-intel2018-cuda-2.2-x86_64 |
MVAPICH2 2.0 | Intel 2019 | mpi/mvapich2-intel-2.0-x86_64 mpi/mvapich2-intel-x86_64 |
MVAPICH2 2.2 | Intel 2019 | mpi/mvapich2-intel-2.2-x86_64 |
MVAPICH2 2.2 | Intel 2019, CUDA 10.1 | mpi/mvapich2-intel2019-cuda101-2.2-x86_64 |
OpenMPI 1.10 | GNU 4.8.5 | mpi/openmpi-x86_64 |
OpenMPI 3.0 | GNU 4.8.5 | mpi/openmpi3-x86_64 |
OpenMPI 3.1 | GNU 4.8.5 | mpi/openmpi31-x86_64 |
OpenMPI 4.1 | GNU 4.8.5 | mpi/openmpi41-x86_64 |
OpenMPI 1.10 | Intel 2019 | mpi/openmpi-intel-x86_64 |
OpenMPI 1.10 | Intel 2019, CUDA 10.0 | mpi/openmpi-intel-cuda-x86_64 |
OpenMPI 2.1 | Intel 2017 | openmpi21-intel-x86_64 |
OpenMPI 3.0 | Intel 2019 | mpi/openmpi3-intel-x86_64 |
OpenMPI 3.0 | Intel 2019, CUDA 10.0 | mpi/openmpi3-intel-cuda-x86_64 |
OpenMPI 3.1 | Intel 2019 | mpi/openmpi31-intel-x86_64 |
OpenMPI 4.1 | Intel 2019 | mpi/openmpi41-intel-x86_64 |
OpenMPI 3.1 | PGI Community Edition Version 19.10 | mpi/openmpi31-pgi-x86_64 |
Intel MPI 2021.5 | Intel MPI 2021 | oneAPI/intel-oneapi-mpi-2021.5.1 |
MVAPICH2
Primjer pokretanja aplikacije prevedene s MVAPICH2 2.2:
Code Block |
---|
module load mpi/mvapich2-intel-2.2-x86_64
mpirun_rsh -np $NSLOTS -hostfile $TMPDIR/machines -export-all applikacija |
OpenMPI
Primjer pokretanja aplikacije prevedene s OpenMPI 3:
Code Block |
---|
module load mpi/openmpi3-intel-x86_64
mpirun -np $NSLOTS -machinefile $TMPDIR/machines applikacija |
Intel MPI
Primjer pokretanja aplikacije prevedene s Intel MPI:
Code Block |
---|
module load oneAPI/intel-oneapi-mpi-2021.5.1 mpirun -np $NSLOTS -hosts applikacija |
Korisničke aplikacije
Informacije o korisničkim aplikacijama koje održava Srce možete pronaći na stranicama:
Children Display |
---|
Primjer korištenja:
Code Block |
---|
module load abinit/8.8.4
mpirun_rsh -np $NSLOTS -hostfile $TMPDIR/machines abinit -i input_files |
Gaussian
Svim zaposlenicima i suradnicima Sveučilišta u Zagrebu dostupan je Gaussian. Na Isabelli su instalirane tri verzije:
- Gaussian 3
- Gaussian 9 verzija D01
- Gaussian 16 verzija A03
Za Gaussian nisu pripremljeni moduli nego se pokreće pomoću pripremljenih skripti:
- /usr/local/bin/dog03-64
- /usr/local/bin/dog09
- /usr/local/bin/dog16
Bitno: nužno je koristiti paralelne okoline *mpisingle.
Gromacs
Quantum Espresso
Quantum Espresso je preveden s Intel 2019 i MVAPICH2 2.2 i parametrima:
Code Block |
---|
export LIBMPI=-lmpich
export CC=icc
export CXX=icc
export FC=ifort
export MPIF90=mpif90
export FCFLAGS='-I/opt/intel/mkl/include/intel64/ilp64 -I/opt/intel/mkl/include -I/opt/intel/mkl/include/fftw'
export CFLAGS='-I/opt/intel/mkl/include/intel64/ilp64 -I/opt/intel/mkl/include -I/opt/intel/mkl/include/fftw'
export FFLAGS='-I/opt/intel/mkl/include/intel64/ilp64 -I/opt/intel/mkl/include -I/opt/intel/mkl/include/fftw'
export MPI_LIBS='-L/usr/lib64/mvapich2-intel-2.2/lib -lmpich'
export BLAS_LIBS='-L/opt/intel/mkl/lib/intel64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
export LAPACK_LIBS='/opt/intel/mkl/lib/intel64/libmkl_blas95_ilp64.a /opt/intel/mkl/lib/intel64/libmkl_lapack95_ilp64.a -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
export FFT_LIBS='/opt/intel/mkl/lib/intel64/libmkl_blas95_ilp64.a /opt/intel/mkl/lib/intel64/libmkl_lapack95_ilp64.a -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
export SCALAPACK_LIBS='/opt/intel/mkl/lib/intel64/libmkl_blas95_ilp64.a /opt/intel/mkl/lib/intel64/libmkl_lapack95_ilp64.a -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -ldl'
./configure --enable-parallel --with-scalapack=intel |
Dostupne verzije su:
...
quantum-espresso/6.3
Primjer korištenja:
...