Commit d47898db authored by Lukáš Krupčík's avatar Lukáš Krupčík

Merge branch 'it4i-salomon'

parents 3f9f8402 2a5a840c
Pipeline #8408 passed with stage
in 15 seconds
# It4Innovations 2019
easyblock = 'Tarball'
name = 'Go'
version = '1.12.7'
homepage = 'http://www.golang.org'
description = """Go is an open source programming language that makes it easy to build
simple, reliable, and efficient software."""
toolchain = {'name': 'dummy', 'version': ''}
source_urls = ['https://dl.google.com/go/']
sources = ['%(namelower)s%(version)s.linux-amd64.tar.gz']
checksums = ['3f0ca2acb238bef57c7e2b6e3d8d0730']
sanity_check_paths = {
'files': ['bin/go', 'bin/gofmt'],
'dirs': ['api', 'doc', 'lib', 'pkg'],
}
modextravars = {'GOROOT': '%(installdir)s'}
moduleclass = 'compiler'
# IT4Innovations 2019
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 computing hardware so as to exploit it accordingly and efficiently."""
toolchain = {'name': 'GCC', 'version': '9.1.0-2.32'}
source_urls = [
'http://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
sources = [SOURCE_TAR_GZ]
dependencies = [('numactl', '2.0.11')]
configopts = "--enable-libnuma=$EBROOTNUMACTL"
moduleclass = 'system'
# IT4Innovations 2019
name = 'icc'
version = '2019.4.227'
homepage = 'http://software.intel.com/en-us/intel-compilers/'
description = "Intel C and C++ compilers"
toolchain = {'name': 'dummy', 'version': ''}
source_urls = ['http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/14865/']
sources = ['parallel_studio_xe_%(version_major)s_update%(version_minor)s_composer_edition_for_cpp.tgz']
gccver = '9.1.0'
binutilsver = '2.32'
versionsuffix = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),
('binutils', binutilsver, '', ('GCCcore', gccver)),
]
# list of regex for components to install
# full list of components can be obtained from pset/mediaconfig.xml in unpacked sources
# cfr. https://software.intel.com/en-us/articles/intel-composer-xe-2015-silent-installation-guide
components = ['intel-comp', 'intel-ccomp', 'intel-icc', 'intel-openmp', 'intel-ipsc?_', 'intel-gdb(?!.*mic)']
dontcreateinstalldir = 'True'
license_file = '/apps/licenses/intel/license.lic'
modextravars = {
'CC': 'icc',
'CXX': 'icpc',
'OPTFLAGS': '-O3 -xHost -ip',
'DEBUGFLAGS': '-O0 -g'
}
modluafooter = 'add_property("state","experimental")'
moduleclass = 'compiler'
# IT4Innovations 2019
easyblock = 'Toolchain'
name = 'iccifort'
version = '2019.4.227'
versionsuffix = '-GCC-9.1.0-2.32'
homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = "Intel C, C++ & Fortran compilers"
toolchain = {'name': 'dummy', 'version': ''}
dependencies = [
('icc', version, versionsuffix),
('ifort', version, versionsuffix),
]
modextravars = {
'CC': 'icc',
'CXX': 'icpc',
'F90': 'ifort',
'F77': 'ifort',
'FC': 'ifort',
'OPTFLAGS': '-O3 -xHost -ip',
'DEBUGFLAGS': '-O0 -g'
}
modluafooter = 'add_property("state","experimental")'
moduleclass = 'toolchain'
# IT4Innovations 2019
name = 'ifort'
version = '2019.4.227'
homepage = 'http://software.intel.com/en-us/intel-compilers/'
description = "Intel Fortran compiler"
toolchain = {'name': 'dummy', 'version': ''}
source_urls = ['http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/14866/']
sources = ['parallel_studio_xe_%(version_major)s_update%(version_minor)s_composer_edition_for_fortran.tgz']
#patches = ['ifort-%(version)s_no_mpi_mic_dependency.patch']
gccver = '9.1.0'
binutilsver = '2.32'
versionsuffix = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),
('binutils', binutilsver, '', ('GCCcore', gccver)),
]
# list of regex for components to install
# full list of components can be obtained from pset/mediaconfig.xml in unpacked sources
# cfr. https://software.intel.com/en-us/articles/intel-composer-xe-2015-silent-installation-guide
components = ['intel-comp', 'intel-fcomp', 'intel-ifort', 'intel-openmp', 'intel-ipsf?_', 'intel-gdb(?!.*mic)']
dontcreateinstalldir = 'True'
license_file = '/apps/licenses/intel/license.lic'
modextravars = {
'F90': 'ifort',
'F77': 'ifort',
'FC': 'ifort',
'OPTFLAGS': '-O3 -xHost -ip',
'DEBUGFLAGS': '-O0 -g'
}
modluafooter = 'add_property("state","experimental")'
moduleclass = 'compiler'
# IT4Innovations 2019
name = 'impi'
version = '2019.3.199'
homepage = 'http://software.intel.com/en-us/intel-mpi-library/'
description = "Intel MPI Library, compatible with MPICH ABI"
toolchain = {'name': 'iccifort', 'version': '2019.4.227-GCC-9.1.0-2.32'}
source_urls = ['http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/14879/']
sources = ['l_mpi_%(version)s.tgz']
dontcreateinstalldir = 'True'
components = ['intel-mpi', 'intel-psxe', 'intel-imb']
# set up all the mpi commands to default to intel compilers
# set_mpi_wrappers_all = 'True'
modextravars = {
'I_MPI_CC': 'icc',
'I_MPI_CXX': 'icpc',
'I_MPI_F77': 'ifort',
'I_MPI_F90': 'ifort',
'I_MPI_FC': 'ifort',
'I_MPI_EXTRA_FILESYSTEM': 'enable',
'I_MPI_EXTRA_FILESYSTEM_LIST': 'lustre',
}
modluafooter = 'add_property("state","experimental")'
moduleclass = 'mpi'
# IT4Innovations 2019
easyblock = 'Toolchain'
name = 'intel'
version = '2019.03'
versionsuffix = '-GCC-9.1.0-2.32'
homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = "Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL)."
toolchain = {'name': 'dummy', 'version': ''}
compver = '2019.4.227'
gccver = '9.1.0'
binutilsver = '2.32'
gccsuff = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),
('binutils', binutilsver, '-GCCcore-%s' % gccver),
('icc', compver, gccsuff),
('ifort', compver, gccsuff),
('impi', '2019.3.199', '', ('iccifort', '%s%s' % (compver, gccsuff))),
('imkl', '2019.3.199', '', ('iimpi', version)),
]
modluafooter = 'add_property("state","experimental")'
moduleclass = 'toolchain'
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'numactl'
version = '2.0.11'
homepage = 'http://oss.sgi.com/projects/libnuma/'
description = """The numactl program allows you to run your application program on specific cpu's and memory nodes.
It does this by supplying a NUMA memory policy to the operating system before running your program.
The libnuma library provides convenient ways for you to add NUMA memory policies into your own program."""
toolchain = {'name': 'GCCcore', 'version': '9.1.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/numactl/numactl/archive/']
sources = ['v2.0.12.tar.gz']
checksums = ['a4d2292af28fb20007ddb9706f8bb1cc']
builddependencies = [
('binutils', '2.32'),
('Autotools', '20180311', '', True),
]
preconfigopts = "./autogen.sh && "
sanity_check_paths = {
'files': [
'bin/numactl',
'bin/numastat',
'lib/libnuma.%s' %
SHLIB_EXT,
'lib/libnuma.a'],
'dirs': [
'share/man',
'include']}
moduleclass = 'tools'
# IT4Innovations 2019
easyblock = 'ConfigureMake'
name = 'OpenMPI'
version = '2.1.5'
homepage = 'http://www.open-mpi.org/'
description = """The Open MPI Project is an open source MPI-3.1 implementation."""
toolchain = {'name': 'GCC', 'version': '9.1.0-2.32'}
source_urls = [
'http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
sources = [SOURCELOWER_TAR_GZ]
dependencies = [
('hwloc', '1.11.7')
]
# for PBS Pro 13
preconfigopts = 'export LIBS="-ldl" && '
configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs '
# suppress failure modes in relation to mpirun path
configopts += '--enable-mpirun-prefix-by-default '
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
# configopts += '--disable-dlopen ' # dont disable dlopen!
# https://github.com/open-mpi/ompi/issues/3630
configopts += '--with-tm=/opt/pbs/default ' # Enable PBS
#configopts += '--enable-mpi-java ' # Java support RT#4090
configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings
# needed for --with-verbs
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': 'mlx4_0',
'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
}
moduleclass = 'mpi'
# IT4Innovations 2019
easyblock = 'ConfigureMake'
name = 'Singularity'
version = '3.2.1'
homepage = 'https://github.com/sylabs/singularity'
description = "Singularity is an open source container platform designed to be simple, fast, and secure. Singularity is optimized for EPC and HPC workloads, allowing untrusted users to run untrusted containers in a trusted way."
toolchain = {'name': 'dummy', 'version': ''}
sources = [{
'source_urls': ['https://github.com/sylabs/singularity/releases/download/v3.2.1/'],
'filename': 'singularity-3.2.1.tar.gz',
'extract_cmd': "mkdir -p src/github.com/sylabs/singularity && tar xfvz %s -C src/github.com/sylabs/singularity --strip-components=1",
}]
builddependencies = [
('Go', '1.12.7'),
]
dependencies = [
('squashfs-tools', '4.3'),
]
skipsteps = ['configure']
prebuildopts = "export GOPATH=%(builddir)s && "
prebuildopts += "./mconfig --prefix=%(installdir)s && "
prebuildopts += "cd ./builddir && "
preinstallopts = "cd ./builddir && "
postinstallcmds = [
'echo "mksquashfs path = /apps/all/squashfs-tools/4.3/bin" >> %(installdir)s/etc/singularity/singularity.conf',
]
sanity_check_paths = {
'files': ['bin/singularity'],
'dirs': ['bin', 'etc', 'libexec', 'var'],
}
moduleclass = 'tools'
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment