From fb33b503216bd99141b991c54005fe2d5dc871b1 Mon Sep 17 00:00:00 2001 From: Lukas Krupcik Date: Tue, 27 Aug 2024 11:00:39 +0200 Subject: [PATCH] modified: o/OpenMX/OpenMX-3.9-foss-2022b.eb new file: v/VASP/VASP-6.4.3-NVHPC-23.5-CUDA-12.2.0.eb new file: v/VASP/VASP-6.4.3-NVHPC-24.3-CUDA-12.3.0.eb --- o/OpenMX/OpenMX-3.9-foss-2022b.eb | 34 --------- v/VASP/VASP-6.4.3-NVHPC-23.5-CUDA-12.2.0.eb | 81 +++++++++++++++++++++ v/VASP/VASP-6.4.3-NVHPC-24.3-CUDA-12.3.0.eb | 81 +++++++++++++++++++++ 3 files changed, 162 insertions(+), 34 deletions(-) create mode 100644 v/VASP/VASP-6.4.3-NVHPC-23.5-CUDA-12.2.0.eb create mode 100644 v/VASP/VASP-6.4.3-NVHPC-24.3-CUDA-12.3.0.eb diff --git a/o/OpenMX/OpenMX-3.9-foss-2022b.eb b/o/OpenMX/OpenMX-3.9-foss-2022b.eb index 13626d79..e46794ae 100644 --- a/o/OpenMX/OpenMX-3.9-foss-2022b.eb +++ b/o/OpenMX/OpenMX-3.9-foss-2022b.eb @@ -42,44 +42,21 @@ dependencies = [ ('ELPA', '2022.05.001'), ('FFTW', '3.3.10'), ('OpenMPI', '4.1.4'), -<<<<<<< HEAD -<<<<<<< HEAD ('OpenBLAS', '0.3.21'), -======= ->>>>>>> 68e9d9eacfeb69e5e35ca50c309124a475ebae50 -======= - ('OpenBLAS', '0.3.21'), ->>>>>>> 3938b9c60bc59d837f27e5fa487de341ea90a72f ] files_to_copy = [ -<<<<<<< HEAD -<<<<<<< HEAD ('%(sourcepath)s/*', '%(builddir)s/openmx3.9/source'), -======= - ('%(sourcepath)s/patch3.9.9.tar.gz', '%(builddir)s/openmx3.9/source'), ->>>>>>> 68e9d9eacfeb69e5e35ca50c309124a475ebae50 - ('%(sourcepath)s/kpoint.in', '%(sourcepath)s/openmx3.9/work') -] - -#build_cmd = 'cd %(builddir)s/openmx3.9/source && sed -i "s/-xHOST//g" makefile && sed -i "s/-ip//g" makefile && make CFLAGS="-O3 -no-prec-div -fopenmp"' - - -<<<<<<< HEAD -======= ('%(sourcepath)s/patch3.9.9.tar.gz', '%(builddir)s/openmx3.9/source'), ('%(sourcepath)s/kpoint.in', '%(sourcepath)s/openmx3.9/work') ] ->>>>>>> 3938b9c60bc59d837f27e5fa487de341ea90a72f #build_cmd = 'cd %(builddir)s/openmx3.9/source && sed -i "s/-xHOST//g" makefile && sed -i "s/-ip//g" makefile && sed -i "s/-qopenmp/-fopenmp/g" makefile && sed -i "s/-no-prec-div//g" makefile && make CFLAGS="-O3 -fopenmp"' #build_cmd = 'cd %(builddir)s/openmx3.9/source && sed -i "s/-xHOST//g" makefile && sed -i "s/-ip//g" makefile && sed -i "s/-qopenmp/-fopenmp/g" makefile && sed -i "s/-no-prec-div//g" makefile && sed -i "s|-I/opt/intel/mkl/include/fftw|-I/apps/all/FFTW/3.3.10-GCC-12.2.0/include|g" makefile && sed -i "s|-I./elpa-2018.05.001|-I/apps/all/ELPA/2022.05.001-foss-2022b/include|g" makefile && make CFLAGS=\"-O3 -fopenmp\"' - - # The third party packages should be installed separately and added as # dependencies. The exception is w90, which is force built @@ -93,18 +70,7 @@ buildopts = 'CFLAGS="-O3 -fopenmp" \ LIBS="-L/apps/all/OpenBLAS/0.3.21-GCC-12.2.0/lib -lopenblas -L/apps/all/FFTW/3.3.10-GCC-12.2.0/lib -lfftw3 -L/apps/all/ELPA/2022.05.001-foss-2022b/lib -lelpa -lpthread -lm -ldl" \ MPIFC=mpif90 \ MPICC=mpicc' -<<<<<<< HEAD -======= -build_cmd = 'cd /dev/shm/easybuild/build/OpenMX/3.9/foss-2022b/openmx3.9/source && sed -i "s/-xHOST//g" makefile && sed -i "s/-ip//g" makefile && sed -i "s/-qopenmp/-fopenmp/g" makefile && sed -i "s/-no-prec-div//g" makefile && make CFLAGS="-O3 -fopenmp"' -# The third party packages should be installed separately and added as -# dependencies. The exception is w90, which is force built -#buildopts = 'all' ->>>>>>> 68e9d9eacfeb69e5e35ca50c309124a475ebae50 - -======= ->>>>>>> 3938b9c60bc59d837f27e5fa487de341ea90a72f -# parallel build tends to fail parallel = 0 moduleclass = 'chem' diff --git a/v/VASP/VASP-6.4.3-NVHPC-23.5-CUDA-12.2.0.eb b/v/VASP/VASP-6.4.3-NVHPC-23.5-CUDA-12.2.0.eb new file mode 100644 index 00000000..31518f02 --- /dev/null +++ b/v/VASP/VASP-6.4.3-NVHPC-23.5-CUDA-12.2.0.eb @@ -0,0 +1,81 @@ +# IT4Innovations +# LK 2024 + +easyblock = 'MakeCp' + +name = 'VASP' +version = '6.4.3' +local_cudaversion = '12.2.0' +versionsuffix = '-CUDA-%s' % local_cudaversion + +homepage = 'https://www.vasp.at' +docurls = 'https://www.vasp.at/wiki/index.php/The_VASP_Manual' +description = """ +The Vienna Ab initio Simulation Package (VASP) is a local computer program for atomic scale +materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, +from first principles. + +This is a GPU-enabled build. + +To use VASP, you need an academic license from University of Vienna. +Follow the instructions at https://www.vasp.at/index.php/faqs. + +Please send us the ID of your VASP license, list of authorized users for whom you require access, +and their email which is associated with your license (use only https://support.it4i.cz/rt). +We are responsible for verifying your licenses. +""" + +toolchain = {'name': 'NVHPC', 'version': '23.5-CUDA-12.2.0'} +toolchainopts = {'pic': True} + +# Vasp is proprietary software, see http://www.vasp.at/index.php/faqs on +# how to get access to the code +sources = ['%(namelower)s.%(version)s.tgz'] +patches = ['VASP-%(version)s-NVHPC-23.5-CUDA-12.2.0-adjust-makefile.patch'] +checksums = [ + {'vasp.%(version)s.tgz': 'b704637f7384673f91adfbc803edc5cc7fe736d9623453461f7cdc29b123410e'}, + {'VASP-%(version)s-NVHPC-23.5-CUDA-12.2.0-adjust-makefile.patch': + 'dfc717642ae2ce9b04ed78439fc4d1072dc0d08df4aca2da881b944f2e75625e'}, +] + +dependencies = [ + ('OpenMPI', '4.1.6'), + ('FFTW.MPI', '3.3.10'), + ('FFTW', '3.3.10'), + ('imkl', '2022.2.1', '', True), + ('ScaLAPACK', '3.0'), + ('HDF5', '1.14.3'), + ('QD', '2.3.17'), +] + +prebuildopts = 'cp arch/makefile.include.nvhpc_acc ./makefile.include && ' + +# VASP uses LIBS as a list of folders +prebuildopts += 'unset LIBS && ' + +# AMD/Intel CPU switch - We set xHost by default; change it to -march=core-avx2 when necessary +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + prebuildopts += 'sed -i "s|-xHOST|-march=core-avx2|" makefile.include && ' + prebuildopts += 'sed -i "s|-march=xHost|-march=core-avx2|" makefile.include && ' + +prebuildopts += 'sed -i "s|cuda12.1|cuda12.3|g" makefile.include && ' + +buildopts = 'std gam ncl ' + +parallel = 1 + +files_to_copy = [(['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'], + 'dirs': [] +} + +modluafooter = """ +add_property('state','license') +add_property('arch', 'gpu') +""" + + +moduleclass = 'chem' diff --git a/v/VASP/VASP-6.4.3-NVHPC-24.3-CUDA-12.3.0.eb b/v/VASP/VASP-6.4.3-NVHPC-24.3-CUDA-12.3.0.eb new file mode 100644 index 00000000..da99a9f2 --- /dev/null +++ b/v/VASP/VASP-6.4.3-NVHPC-24.3-CUDA-12.3.0.eb @@ -0,0 +1,81 @@ +# IT4Innovations +# LK 2024 + +easyblock = 'MakeCp' + +name = 'VASP' +version = '6.4.3' +local_cudaversion = '12.3.0' +versionsuffix = '-CUDA-%s' % local_cudaversion + +homepage = 'https://www.vasp.at' +docurls = 'https://www.vasp.at/wiki/index.php/The_VASP_Manual' +description = """ +The Vienna Ab initio Simulation Package (VASP) is a local computer program for atomic scale +materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, +from first principles. + +This is a GPU-enabled build. + +To use VASP, you need an academic license from University of Vienna. +Follow the instructions at https://www.vasp.at/index.php/faqs. + +Please send us the ID of your VASP license, list of authorized users for whom you require access, +and their email which is associated with your license (use only https://support.it4i.cz/rt). +We are responsible for verifying your licenses. +""" + +toolchain = {'name': 'NVHPC', 'version': '24.3-CUDA-12.3.0'} +toolchainopts = {'pic': True} + +# Vasp is proprietary software, see http://www.vasp.at/index.php/faqs on +# how to get access to the code +sources = ['%(namelower)s.%(version)s.tgz'] +patches = ['VASP-%(version)s-NVHPC-23.5-CUDA-12.2.0-adjust-makefile.patch'] +checksums = [ + {'vasp.%(version)s.tgz': 'b704637f7384673f91adfbc803edc5cc7fe736d9623453461f7cdc29b123410e'}, + {'VASP-%(version)s-NVHPC-23.5-CUDA-12.2.0-adjust-makefile.patch': + 'dfc717642ae2ce9b04ed78439fc4d1072dc0d08df4aca2da881b944f2e75625e'}, +] + +dependencies = [ + ('OpenMPI', '4.1.6'), + ('FFTW.MPI', '3.3.10'), + ('FFTW', '3.3.10'), + ('imkl', '2022.2.1', '', True), + ('ScaLAPACK', '3.0'), + ('HDF5', '1.14.3'), + ('QD', '2.3.17'), +] + +prebuildopts = 'cp arch/makefile.include.nvhpc_acc ./makefile.include && ' + +# VASP uses LIBS as a list of folders +prebuildopts += 'unset LIBS && ' + +# AMD/Intel CPU switch - We set xHost by default; change it to -march=core-avx2 when necessary +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + prebuildopts += 'sed -i "s|-xHOST|-march=core-avx2|" makefile.include && ' + prebuildopts += 'sed -i "s|-march=xHost|-march=core-avx2|" makefile.include && ' + +prebuildopts += 'sed -i "s|cuda12.1|cuda12.3|g" makefile.include && ' + +buildopts = 'std gam ncl ' + +parallel = 1 + +files_to_copy = [(['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'], + 'dirs': [] +} + +modluafooter = """ +add_property('state','license') +add_property('arch', 'gpu') +""" + + +moduleclass = 'chem'