new file: archive/s/sqsgenerator/sqsgenerator-0.1-intel-compilers-2021.4.0-Python-3.9.6.eb

new file:   b/Blender/Blender-3.1.0-GCC-10.3.0.eb
	new file:   b/Boost/Boost-1.77.0-GCC-10.2.0-Python-3.8.6.eb
	new file:   b/Boost/Boost-1.77.0-intel-compilers-2021.4.0-Python-3.9.6.eb
	modified:   c/CUDAcore/CUDAcore-11.6.0.eb
	new file:   d/DualSPHysics/DualSPHysics-5.0.175-GCC-11.2.0-CUDA-11.6.0.eb
	new file:   d/DualSPHysics/DualSPHysics-5.0.175-GCC-11.2.0.eb
	new file:   d/DualSPHysics/DualSPHysics-5.0.175.patch
	new file:   h/hwloc/hwloc-1.11.7-GCC-10.2.0.eb
	modified:   o/ORCA/ORCA-4.2.0-OpenMPI-3.1.4.eb
	modified:   o/ORCA/ORCA-4.2.1-OpenMPI-3.1.4.eb
	new file:   o/OpenMPI/OpenMPI-3.1.4-GCC-10.2.0.eb
	new file:   q/QEMU/QEMU-6.2.0-VDE2.eb
	new file:   s/sqsgenerator/sqsgenerator-0.0.5-GCC-10.2.0-Python-3.8.6.eb
	new file:   s/sqsgenerator/sqsgenerator-0.1-GCC-10.2.0-Python-3.8.6.eb
This commit is contained in:
Lukas Krupcik 2022-03-30 11:27:29 +02:00
parent 238c5e7645
commit 5812aff4e8
15 changed files with 510 additions and 3 deletions

View File

@ -0,0 +1,53 @@
# IT4Innovations
# LK 2022
easyblock = 'PythonPackage'
name = 'sqsgenerator'
version = '0.1'
versionsuffix = '-Python-3.9.6'
homepage = 'https://github.com/dnoeger/sqsgenerator'
description = """This package is a Special Quasirandom Structure generator written in Python3/Cython.
Please note that the programm currently only works with Python 3."""
toolchain = {'name': 'intel-compilers', 'version': '2021.4.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/dgehringer/sqsgenerator/archive/refs/tags/']
sources = ['v%(version)s.tar.gz']
#patches = ['sqsgenerator-20180823-Py-3.6.patch']
builddependencies = [
('CMake', '3.21.1'),
]
dependencies = [
('Python', '3.9.6'),
('GMP', '6.2.1'),
('Boost', '1.77.0', '-Python-3.9.6'),
]
sanity_check_paths = {
'files': [
'bin/chardetect',
'bin/cygdb',
'bin/cython',
'bin/cythonize',
'bin/f2py',
'bin/feff_input_generation',
'bin/feff_plot_cross_section',
'bin/feff_plot_dos',
'bin/gaussian_analyzer',
'bin/get_environment',
'bin/isympy',
'bin/pmg',
'bin/pydii',
'bin/sqsgenerator',
'bin/tabulate'],
'dirs': [
'bin',
'lib']}
moduleclass = 'lang'

View File

@ -0,0 +1,31 @@
# IT4Innovations 2021
easyblock = 'Tarball'
name = 'Blender'
version = '3.1.0'
homepage = 'https://www.blender.org/'
description = """Blender is the free and open source 3D creation suite. It supports
the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering,
compositing and motion tracking, even video editing and game creation."""
toolchain = {'name': 'GCC', 'version': '10.3.0'}
source_urls = ['https://ftp.nluug.nl/pub/graphics/blender/release/Blender3.1/']
sources = ['blender-%(version)s-linux-x64.tar.xz']
checksums = ['ced2aaabc75731c2ae0e29493d0d2db7803d2bbb70a11cd0e7f50546d465bd8c']
postinstallcmds = [
'ml CUDAcore;"nvcc" -arch=sm_80 --cubin "%(installdir)s/3.1/scripts/addons/cycles/source/kernel/device/cuda/kernel.cu" -o "%(installdir)s/3.1/scripts/addons/cycles/lib/kernel_sm_80.cubin" -m64 --ptxas-options="-v" --use_fast_math -DNVCC -I"%(installdir)s/3.1/scripts/addons/cycles/source" -DWITH_NANOVDB',
'find %(installdir)s -executable -exec chmod +x {} \;',
]
modextrapaths = {'PATH': ''}
sanity_check_paths = {
'files': ["blender"],
'dirs': []
}
moduleclass = 'vis'

View File

@ -0,0 +1,30 @@
# IT4Innovations
# LK 2022
name = 'Boost'
version = '1.77.0'
versionsuffix = '-Python-%(pyver)s'
homepage = 'http://www.boost.org/'
description = """Boost provides free peer-reviewed portable C++ source libraries."""
toolchain = {'name': 'GCC', 'version': '10.2.0'}
toolchainopts = {'pic': True}
source_urls = [SOURCEFORGE_SOURCE]
sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))]
#patches = ['Boost-1.65.1_fix-Python3.patch']
dependencies = [
('bzip2', '1.0.8'),
('zlib', '1.2.11'),
('Python', '3.8.6')
]
configopts = '--with-python=$EBROOTPYTHON/bin/python'
# also build boost_mpi
boost_mpi = False
moduleclass = 'devel'

View File

@ -0,0 +1,37 @@
# IT4Innovations
# LK 2022
name = 'Boost'
version = '1.77.0'
versionsuffix = '-Python-3.9.6'
homepage = 'https://www.boost.org/'
description = """Boost provides free peer-reviewed portable C++ source libraries."""
toolchain = {'name': 'intel-compilers', 'version': '2021.4.0'}
toolchainopts = {'pic': True}
source_urls = ['https://boostorg.jfrog.io/artifactory/main/release/%(version)s/source/']
sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))]
checksums = ['5347464af5b14ac54bb945dc68f1dd7c56f0dad7262816b956138fc53bcc0131']
dependencies = [
('Python', '3.9.6'),
('bzip2', '1.0.8'),
('zlib', '1.2.11'),
('XZ', '5.2.5'),
('ICU', '69.1'),
]
preconfigopts = "sed -i 's/-static//g' tools/build/src/engine/build.sh && "
# fix test_toolset function so it works correctly for intel-linux toolset;
# see also https://github.com/boostorg/build/issues/647
preconfigopts += "sed -i 's/{TOOLSET}/{B2_TOOLSET}/g' tools/build/src/engine/build.sh && "
configopts = '--with-python=$EBROOTPYTHON/bin/python'
# disable MPI, build Boost libraries with tagged layout
boost_mpi = False
tagged_layout = True
moduleclass = 'devel'

View File

@ -1,5 +1,5 @@
# IT4Innovations
# LK 2021
# LK 2022
easyblock = 'EB_CUDA'

View File

@ -0,0 +1,56 @@
# IT4Innovations
# LK 22
easyblock = 'CMakeMake'
name = 'DualSPHysics'
version = '5.0.175'
versionsuffix = '-CUDA-%(cudaver)s'
homepage = 'https://dual.sphysics.org/'
description = """DualSPHysics is based on the Smoothed Particle Hydrodynamics model named SPHysics.
The code is developed to study free-surface flow phenomena where Eulerian methods
can be difficult to apply, such as waves or impact of dam-breaks on off-shore
structures. DualSPHysics is a set of C++, CUDA and Java codes designed to deal
with real-life engineering problems."""
toolchain = {'name': 'GCC', 'version': '11.2.0'}
source_urls = ['https://github.com/DualSPHysics/DualSPHysics/archive/refs/tags/']
sources = ['v%(version)s.tar.gz']
patches = ['%(name)s-%(version)s.patch']
checksums = [
'd65bb7b8b4a21582091a534142348e46cff0a288a97ef86643bc2dde15637575', # v5.0.175.tar.gz
'b2fad86d99e31fe2e1b5c65bab60a4f14362401b6de00a395b3a1bd13f608366', # DualSPHysics-5.0.175.patch
]
srcdir = 'src/source'
builddependencies = [
('CUDAcore', '11.6.0', '', True),
('CMake', '3.21.1'),
]
separate_build_dir = True
buildopts = " && chmod +x %(builddir)s/%(name)s-%(version)s/bin/linux/*_linux64"
install_cmd = "mkdir -p %(installdir)s/bin && "
install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/bin/linux/* %(installdir)s/bin && "
install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/src/lib/linux_gcc %(installdir)s/lib"
local_bins = ['GenCase', 'PartVTK', 'IsoSurface', 'MeasureTool', 'GenCase_MkWord',
'DualSPHysics4.0_LiquidGas', 'DualSPHysics4.0_LiquidGasCPU', 'DualSPHysics5.0',
'DualSPHysics5.0CPU', 'DualSPHysics5.0_NNewtonian', 'DualSPHysics5.0_NNewtonianCPU']
sanity_check_paths = {
'files': ['bin/%s_linux64' % x for x in local_bins],
'dirs': ["lib"],
}
sanity_check_commands = ['%s_linux64 -h' % x for x in local_bins]
moduleclass = 'cae'

View File

@ -0,0 +1,52 @@
##
# Authors: Eduardo Miguel Firvida Donestevez <efirvida@gmail.com>
# Robert Mijakovic <robert.mijakovic@lxp.lu>
##
easyblock = 'CMakeMake'
name = 'DualSPHysics'
version = '5.0.175'
homepage = 'https://dual.sphysics.org/'
description = """DualSPHysics is based on the Smoothed Particle Hydrodynamics model named SPHysics.
The code is developed to study free-surface flow phenomena where Eulerian methods
can be difficult to apply, such as waves or impact of dam-breaks on off-shore
structures. DualSPHysics is a set of C++, CUDA and Java codes designed to deal
with real-life engineering problems."""
toolchain = {'name': 'GCC', 'version': '11.2.0'}
source_urls = ['https://github.com/DualSPHysics/DualSPHysics/archive/refs/tags/']
sources = ['v%(version)s.tar.gz']
checksums = ['d65bb7b8b4a21582091a534142348e46cff0a288a97ef86643bc2dde15637575']
srcdir = 'src/source'
builddependencies = [
('CMake', '3.21.1'),
]
separate_build_dir = True
buildopts = " && chmod +x %(builddir)s/%(name)s-%(version)s/bin/linux/*_linux64"
install_cmd = "mkdir -p %(installdir)s/bin && "
install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/bin/linux/* %(installdir)s/bin && "
install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/src/lib/linux_gcc %(installdir)s/lib"
local_bins = ['GenCase', 'PartVTK', 'IsoSurface', 'MeasureTool', 'GenCase_MkWord',
'DualSPHysics4.0_LiquidGas', 'DualSPHysics4.0_LiquidGasCPU', 'DualSPHysics5.0',
'DualSPHysics5.0CPU', 'DualSPHysics5.0_NNewtonian', 'DualSPHysics5.0_NNewtonianCPU']
sanity_check_paths = {
'files': ['bin/%s_linux64' % x for x in local_bins],
'dirs': ["lib"],
}
sanity_check_commands = ['%s_linux64 -h' % x for x in local_bins]
moduleclass = 'cae'

View File

@ -0,0 +1,27 @@
Author: Robert Mijakovic <robert.mijakovic@lxp.lu>
Adds newly supported code generation for CUDA 11.
diff -Naur DualSPHysics-5.0.175/src/source/CMakeLists.txt DualSPHysics-5.0.175/src/source/CMakeLists.txt
--- DualSPHysics-5.0.175/src/source/CMakeLists.txt 2021-02-25 18:46:13.000000000 +0100
+++ DualSPHysics-5.0.175/src/source/CMakeLists.txt 2021-10-13 18:46:17.000000000 +0200
@@ -52,9 +52,12 @@
elseif(CUDA_VERSION VERSION_GREATER "7.4" AND CUDA_VERSION VERSION_LESS "9.1")
message("Using cuda version >=7.5 and <9.1")
list(APPEND CUDA_NVCC_FLAGS "-use_fast_math -O3 -gencode=arch=compute_20,code=\"sm_20,compute_20\" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_35,code=\"sm_35,compute_35\" -gencode=arch=compute_37,code=\"sm_37,compute_37\" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -gencode=arch=compute_52,code=\"sm_52,compute_52\"")
- else()
- message("Using cuda version >=9.1")
+ elseif(CUDA_VERSION VERSION_GREATER "9.1" AND CUDA_VERSION VERSION_LESS "11.1")
+ message("Using cuda version >=9.1 and <11.1")
list(APPEND CUDA_NVCC_FLAGS "-use_fast_math -O3 -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_35,code=\"sm_35,compute_35\" -gencode=arch=compute_37,code=\"sm_37,compute_37\" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -gencode=arch=compute_52,code=\"sm_52,compute_52\" -gencode=arch=compute_61,code=\"sm_61,compute_61\" -gencode=arch=compute_70,code=\"sm_70,compute_70\"")
+ else()
+ message("Using cuda version >=11.1")
+ list(APPEND CUDA_NVCC_FLAGS "-use_fast_math -O3 -gencode=arch=compute_35,code=\"sm_35,compute_35\" -gencode=arch=compute_37,code=\"sm_37,compute_37\" -gencode=arch=compute_50,code=\"sm_50,compute_50\" -gencode=arch=compute_52,code=\"sm_52,compute_52\" -gencode=arch=compute_61,code=\"sm_61,compute_61\" -gencode=arch=compute_70,code=\"sm_70,compute_70\" -gencode=arch=compute_80,code=\"sm_80,compute_80\"")
endif()
else()
message("CUDA Libraries were not found.")
@@ -201,4 +204,4 @@
string(REGEX REPLACE "/MD" "/MT" ${CPP_FLAGS} "${${CPP_FLAGS}}")
endif(${CPP_FLAGS} MATCHES "/MD")
endforeach(CPP_FLAGS)
-endif()
\ No newline at end of file
+endif()

View File

@ -0,0 +1,29 @@
# IT4Innovations
# LK 2022
easyblock = 'ConfigureMake'
name = 'hwloc'
version = '1.11.7'
homepage = 'http://www.open-mpi.org/projects/hwloc/'
description = """The Portable Hardware Locality (hwloc) software package provides a portable abstraction
(across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including
NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various
system attributes such as cache and memory information as well as the locality of I/O devices such as
network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering
information about modern local_computing hardware so as to exploit it accordingly and efficiently."""
toolchain = {'name': 'GCC', 'version': '10.2.0'}
source_urls = [
'http://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
sources = [SOURCE_TAR_GZ]
dependencies = [
('numactl', '2.0.13'),
]
configopts = "--enable-libnuma=$EBROOTNUMACTL"
moduleclass = 'system'

View File

@ -19,7 +19,7 @@ toolchain = SYSTEM
sources = ['orca_4_2_0_linux_x86-64_openmpi314.tar.xz']
checksums = ['7f4892140266948bff373b57314b946f']
dependencies = [('OpenMPI', '3.1.4', '-GCC-6.3.0-2.27')]
dependencies = [('OpenMPI', '3.1.4', '-GCC-10.2.0')]
sanity_check_paths = {
'files': ['orca_%s%s' % (x, y) for x in ['anoint', 'casscf', 'cis', 'cpscf',

View File

@ -20,7 +20,7 @@ toolchain = SYSTEM
sources = ['orca_4_2_1_linux_x86-64_openmpi314.tar.xz']
checksums = ['470c7362293ebc2fb14bfce5b6652ff8']
dependencies = [('OpenMPI', '3.1.4', '-GCC-6.3.0-2.27')]
dependencies = [('OpenMPI', '3.1.4', '-GCC-10.2.0')]
sanity_check_paths = {
'files': ['orca_%s%s' % (x, y) for x in ['anoint', 'casscf', 'cis', 'cpscf',

View File

@ -0,0 +1,52 @@
# IT4Innovations
# LK 2022
easyblock = 'ConfigureMake'
name = 'OpenMPI'
version = '3.1.4'
homepage = 'http://www.open-mpi.org/'
description = """The Open MPI Project is an open source MPI-2 implementation."""
toolchain = {'name': 'GCC', 'version': '10.2.0'}
source_urls = [
'http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
sources = [SOURCELOWER_TAR_GZ]
dependencies = [
('hwloc', '1.11.7'),
('zlib', '1.2.11'),
('libxml2', '2.9.10'),
('UCX', '1.9.0'),
]
configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs '
configopts += '--enable-mpirun-prefix-by-default '
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
configopts += '--with-tm=/opt/pbs ' # Enable PBS
configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings
configopts += '--with-ucx=$EBROOTUCX '
configopts += '--disable-builtin-atomics ' # RT35770
osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')]
libs = ["mpi_mpifh", "mpi", "ompitrace", "open-pal", "open-rte"]
sanity_check_paths = {
'files': [
"bin/%s" %
binfile for binfile in [
"ompi_info", "opal_wrapper", "orterun"]] + [
"lib/lib%s.%s" %
(libfile, SHLIB_EXT) for libfile in libs] + [
"include/%s.h" %
x for x in [
"mpi-ext", "mpif-config", "mpif", "mpi", "mpi_portable_platform"]], 'dirs': [], }
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
'OMPI_MCA_btl_tcp_if_include': '10.33.4.0/24',
'OMPI_MCA_orte_base_help_aggregate': '0',
}
moduleclass = 'mpi'

34
q/QEMU/QEMU-6.2.0-VDE2.eb Normal file
View File

@ -0,0 +1,34 @@
# IT4Innovations
# LK 2022
easyblock = 'ConfigureMake'
name = "QEMU"
version = "6.2.0"
versionsuffix = "-VDE2"
homepage = 'http://wiki.qemu.org/Main_Page'
description = """QEMU is a generic and open source machine emulator and
virtualizer."""
configopts = "--target-list=x86_64-softmmu,x86_64-linux-user,i386-softmmu,i386-linux-user"
toolchain = SYSTEM
sources = [SOURCELOWER_TAR_BZ2]
source_urls = ['http://wiki.qemu-project.org/download/']
patches = ['qemu-slirp-smb-2.9.0.patch']
dependencies = [
('VDE2', '2.3.2'),
('Python', '3.8.6', '', ('GCCcore', '10.2.0')),
('pixman', '0.40.0', '', ('GCCcore', '10.2.0')),
]
sanity_check_paths = {
'files': ['bin/qemu-x86_64'],
'dirs': ['bin', 'share'],
}
moduleclass = 'tools'

View File

@ -0,0 +1,53 @@
# IT4Innovations
# LK 2022
easyblock = 'PythonPackage'
name = 'sqsgenerator'
version = '0.0.5'
versionsuffix = '-Python-3.8.6'
homepage = 'https://github.com/dnoeger/sqsgenerator'
description = """This package is a Special Quasirandom Structure generator written in Python3/Cython.
Please note that the programm currently only works with Python 3."""
toolchain = {'name': 'GCC', 'version': '10.2.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/dgehringer/sqsgenerator/archive/refs/tags/']
sources = ['v%(version)s.tar.gz']
#patches = ['sqsgenerator-20180823-Py-3.6.patch']
builddependencies = [
('CMake', '3.18.4'),
]
dependencies = [
('Python', '3.8.6'),
('GMP', '6.2.0'),
('Boost', '1.77.0', '-Python-3.8.6'),
]
sanity_check_paths = {
'files': [
'bin/chardetect',
'bin/cygdb',
'bin/cython',
'bin/cythonize',
'bin/f2py',
'bin/feff_input_generation',
'bin/feff_plot_cross_section',
'bin/feff_plot_dos',
'bin/gaussian_analyzer',
'bin/get_environment',
'bin/isympy',
'bin/pmg',
'bin/pydii',
'bin/sqsgenerator',
'bin/tabulate'],
'dirs': [
'bin',
'lib']}
moduleclass = 'lang'

View File

@ -0,0 +1,53 @@
# IT4Innovations
# LK 2022
easyblock = 'PythonPackage'
name = 'sqsgenerator'
version = '0.1'
versionsuffix = '-Python-3.8.6'
homepage = 'https://github.com/dnoeger/sqsgenerator'
description = """This package is a Special Quasirandom Structure generator written in Python3/Cython.
Please note that the programm currently only works with Python 3."""
toolchain = {'name': 'GCC', 'version': '10.2.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/dgehringer/sqsgenerator/archive/refs/tags/']
sources = ['v%(version)s.tar.gz']
#patches = ['sqsgenerator-20180823-Py-3.6.patch']
builddependencies = [
('CMake', '3.18.4'),
]
dependencies = [
('Python', '3.8.6'),
('GMP', '6.2.0'),
('Boost', '1.77.0', '-Python-3.8.6'),
]
sanity_check_paths = {
'files': [
'bin/chardetect',
'bin/cygdb',
'bin/cython',
'bin/cythonize',
'bin/f2py',
'bin/feff_input_generation',
'bin/feff_plot_cross_section',
'bin/feff_plot_dos',
'bin/gaussian_analyzer',
'bin/get_environment',
'bin/isympy',
'bin/pmg',
'bin/pydii',
'bin/sqsgenerator',
'bin/tabulate'],
'dirs': [
'bin',
'lib']}
moduleclass = 'lang'