diff --git a/Custom_EasyBlocks/cp2k.py b/Custom_EasyBlocks/cp2k.py index 9ad3c7b7a33fdfea61e3047266037cc6bf444458..f2901e2f18590d898c1bbdcfa110aac9ce597404 100644 --- a/Custom_EasyBlocks/cp2k.py +++ b/Custom_EasyBlocks/cp2k.py @@ -129,14 +129,18 @@ class EB_CP2K(EasyBlock): self.cfg['type'], known_types) self.log.info("initial start_dir %s" %self.cfg['start_dir']) cpstring="cp -r %s../dbcsr-%s/* %sexts/dbcsr/" %(self.cfg['start_dir'],self.cfg['dbcsr_version'],self.cfg['start_dir']) - cpstringb="cp -r %s../dbcsr-%s/.cp2k %sexts/dbcsr/" %(self.cfg['start_dir'],self.cfg['dbcsr_version'],self.cfg['start_dir']) + if self.cfg['dbcsr_version'] == '2.1.0': + cpstringb="cp -r %s../dbcsr-%s/.cp2k %sexts/dbcsr/" %(self.cfg['start_dir'],self.cfg['dbcsr_version'],self.cfg['start_dir']) + vorbis="cd %s../libvori%s/ && mkdir build && cd build && cmake .. && gmake && cp libvori.a %s/ " %(self.cfg['start_dir'],self.cfg['libvori_version'], self.cfg['start_dir']) # run_cmd(cpstring) self.log.info(cpstring) - self.log.info(cpstringb) +# self.log.info(cpstringb) self.log.info(vorbis) os.system(cpstring) - os.system(cpstringb) + if self.cfg['dbcsr_version'] == '2.1.0': + os.system(cpstringb) + os.system(vorbis) # correct start dir, if needed diff --git a/Golden_Repo/c/CP2K/CP2K-9.1.0-intel-para-2021b.eb b/Golden_Repo/c/CP2K/CP2K-9.1.0-intel-para-2021b.eb new file mode 100644 index 0000000000000000000000000000000000000000..e08318690be8f51bf213859569437d9d964094b3 --- /dev/null +++ b/Golden_Repo/c/CP2K/CP2K-9.1.0-intel-para-2021b.eb @@ -0,0 +1,95 @@ +name = 'CP2K' +version = '9.1.0' + +homepage = 'http://www.cp2k.org/' +description = """CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular + simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different + methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and + classical pair and many-body potentials. + The default eigensolver is set to Scalapack. This setting can be overridden by specifiying + PREFERRED_DIAG_LIBRARY ELPA in the global section of the cp2k input. Note, that application-dependent + - in particular for small basis sizes - the use of the ELPA eigensolver library can cause dead-locks: + the program might be killed with a corresponding message from the MPI library ( parastation mpi) + or even hang (openmpi). The user is advised to check whether the particular application is prone to + deadlocks if ELPA is switched on. + The Libvori library for Voronoi integration and the BQB compressed volumetric trajectory data is included + (https://brehm-research.de/voronoi, https://brehm-research.de/bqb). + Tree-Monte-Carlo is disfunctional; this is the hybrid MPI/OpenMP version of CP2K. +""" + +toolchain = {'name': 'intel-para', 'version': '2021b'} +toolchainopts = {'pic': True, 'openmp': True} + +# which dbcsr_version +dbcsr_version = '2.2.0' +local_libvori_version = '-210412' + +sources = [ + 'v%(version)s.tar.gz', + 'v%s.tar.gz' % dbcsr_version, + 'libvori%s.tar.gz' % local_libvori_version, +] +source_urls = [ + 'https://github.com/cp2k/cp2k/archive/', + 'https://github.com/cp2k/dbcsr/archive/' +] + +patches = [ + 'CP2K-9.1_fftw3_lib.patch', + 'CP2K-9.1_elpa.patch', + 'CP2K-9.1_dbcsr.patch', +] + +checksums = [ + 'e0cd859e506435a38454eeaaa3bc2c1656ffd5d22698062957c84f8b4f426126', + '96ce3c630b78529b9cf063b6d710a682a9c6702a6e74d642e7f469d754f954a5', + '331886aea9d093d8c44b95a07fab13d47f101b1f94a0640d7d670eb722bf90ac', + '1b7674b0046d329f9913ed99e92b53481e878a04a4856c817228d4816d0ea624', + '33c765f5e119541d943c0d9386059e1ef6f82ca1f2e9490adeca6b86656b5b2d', + 'c480c46d31290056079f6a9d5fa17454d34169d1a7850af22378dd794257c3b7' +] + +dependencies = [ + ('ELPA', '2021.11.001'), + ('Libint', '2.7.0-beta.6', '_cp2k_lmax5', ('intel-compilers', '2021.4.0')), + ('libxsmm', '1.16.3', '', ('intel-compilers', '2021.4.0')), + ('libxc', '5.1.7', '', ('intel-compilers', '2021.4.0')), + ('FFTW', '3.3.10'), + ('PLUMED', '2.7.2'), +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.7.6'), + ('CMake', '3.21.1'), + ('Python', '3.9.6', '', ('GCCcore', '11.2.0')), +] + + +# Add PLUMED support +plumed = True + +# Disable CUDA +cuda = False + +# explicit unrolled loops up to __MAX_CONTR, 4 gives excessive compiler times +configopts = '-D__MAX_CONTR=3' + +# popt or psmp +type = 'psmp' + +# run tests separately (2 nodes of juwels approx 1 hour) +runtest = False + + +# additional DFLAGS +extradflags = '-D__MKL -D__LIBVORI' + +# regression test reports failures +ignore_regtest_fails = False + +modextravars = { + 'CP2K_DATA_DIR': '%(installdir)s/data', +} + +moduleclass = 'chem' diff --git a/Golden_Repo/c/CP2K/CP2K-9.1.0-iomkl-2021b.eb b/Golden_Repo/c/CP2K/CP2K-9.1.0-iomkl-2021b.eb new file mode 100644 index 0000000000000000000000000000000000000000..31d4e101108b8a7747e055cc4c5f7f3bf68f9dc3 --- /dev/null +++ b/Golden_Repo/c/CP2K/CP2K-9.1.0-iomkl-2021b.eb @@ -0,0 +1,95 @@ +name = 'CP2K' +version = '9.1.0' + +homepage = 'http://www.cp2k.org/' +description = """CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular + simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different + methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and + classical pair and many-body potentials. + The default eigensolver is set to Scalapack. This setting can be overridden by specifiying + PREFERRED_DIAG_LIBRARY ELPA in the global section of the cp2k input. Note, that application-dependent + - in particular for small basis sizes - the use of the ELPA eigensolver library can cause dead-locks: + the program might be killed with a corresponding message from the MPI library ( parastation mpi) + or even hang (openmpi). The user is advised to check whether the particular application is prone to + deadlocks if ELPA is switched on. + The Libvori library for Voronoi integration and the BQB compressed volumetric trajectory data is included + (https://brehm-research.de/voronoi, https://brehm-research.de/bqb). + Tree-Monte-Carlo is disfunctional; this is the hybrid MPI/OpenMP version of CP2K. +""" + +toolchain = {'name': 'iomkl', 'version': '2021b'} +toolchainopts = {'pic': True, 'openmp': True} + +# which dbcsr_version +dbcsr_version = '2.2.0' +local_libvori_version = '-210412' + +sources = [ + 'v%(version)s.tar.gz', + 'v%s.tar.gz' % dbcsr_version, + 'libvori%s.tar.gz' % local_libvori_version, +] +source_urls = [ + 'https://github.com/cp2k/cp2k/archive/', + 'https://github.com/cp2k/dbcsr/archive/' +] + +patches = [ + 'CP2K-9.1_fftw3_lib.patch', + 'CP2K-9.1_elpa.patch', + 'CP2K-9.1_dbcsr.patch', +] + +checksums = [ + 'e0cd859e506435a38454eeaaa3bc2c1656ffd5d22698062957c84f8b4f426126', + '96ce3c630b78529b9cf063b6d710a682a9c6702a6e74d642e7f469d754f954a5', + '331886aea9d093d8c44b95a07fab13d47f101b1f94a0640d7d670eb722bf90ac', + '1b7674b0046d329f9913ed99e92b53481e878a04a4856c817228d4816d0ea624', + '33c765f5e119541d943c0d9386059e1ef6f82ca1f2e9490adeca6b86656b5b2d', + 'c480c46d31290056079f6a9d5fa17454d34169d1a7850af22378dd794257c3b7' +] + +dependencies = [ + ('ELPA', '2021.11.001'), + ('Libint', '2.7.0-beta.6', '_cp2k_lmax5', ('intel-compilers', '2021.4.0')), + ('libxsmm', '1.16.3', '', ('intel-compilers', '2021.4.0')), + ('libxc', '5.1.7', '', ('intel-compilers', '2021.4.0')), + ('FFTW', '3.3.10'), + ('PLUMED', '2.7.2'), +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.7.6'), + ('CMake', '3.21.1'), + ('Python', '3.9.6', '', ('GCCcore', '11.2.0')), +] + + +# Add PLUMED support +plumed = True + +# Disable CUDA +cuda = False + +# explicit unrolled loops up to __MAX_CONTR, 4 gives excessive compiler times +configopts = '-D__MAX_CONTR=3' + +# popt or psmp +type = 'psmp' + +# run tests separately (2 nodes of juwels approx 1 hour) +runtest = False + + +# additional DFLAGS +extradflags = '-D__MKL -D__LIBVORI' + +# regression test reports failures +ignore_regtest_fails = False + +modextravars = { + 'CP2K_DATA_DIR': '%(installdir)s/data', +} + +moduleclass = 'chem'