Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

{toolchain} intel/2020a #10494

Merged
merged 2 commits into from
Apr 27, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions easybuild/easyconfigs/h/HPL/HPL-2.3-intel-2020a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name = 'HPL'
version = '2.3'

homepage = 'https://www.netlib.org/benchmark/hpl/'
description = """HPL is a software package that solves a (random) dense linear system in double precision (64 bits)
arithmetic on distributed-memory computers. It can thus be regarded as a portable as well as freely available
implementation of the High Performance Computing Linpack Benchmark."""

toolchain = {'name': 'intel', 'version': '2020a'}
toolchainopts = {'usempi': True}

source_urls = ['https://www.netlib.org/benchmark/%(namelower)s']
sources = [SOURCELOWER_TAR_GZ]
# fix Make dependencies, so parallel build also works
patches = ['HPL_parallel-make.patch']
checksums = [
'32c5c17d22330e6f2337b681aded51637fb6008d3f0eb7c277b163fadd612830', # hpl-2.3.tar.gz
'2a5bf9c4f328049828ddecec7ba3f05a9e25d236f4212747c53bd22fea80c5e6', # HPL_parallel-make.patch
]

moduleclass = 'tools'
40 changes: 40 additions & 0 deletions easybuild/easyconfigs/i/iccifort/iccifort-2020.1.217.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild

name = 'iccifort'
version = '2020.1.217'

homepage = 'https://software.intel.com/en-us/intel-compilers/'
description = "Intel C, C++ & Fortran compilers"

toolchain = SYSTEM

source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16530/']
sources = ['parallel_studio_xe_%(version_major)s_update%(version_minor)s_composer_edition.tgz']
patches = ['iccifort-%(version)s_no_mpi_rt_dependency.patch']
checksums = [
# parallel_studio_xe_2020_update1_composer_edition.tgz
'26c7e7da87b8a83adfd408b2a354d872be97736abed837364c1bf10f4469b01e',
# iccifort-2020.1.217_no_mpi_rt_dependency.patch
'61b558089d3d9253fad2139a16dc0899b9f839f34303e094efd70b281fc41a96',
]

local_gccver = '9.3.0'

dependencies = [
('GCCcore', local_gccver),
('binutils', '2.34', '', ('GCCcore', local_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-fcomp', 'intel-icc', 'intel-ifort',
'intel-openmp', 'intel-ipsc?_', 'intel-gdb(?!.*mic)'
]

dontcreateinstalldir = True

license_file = HOME + '/licenses/intel/license.lic'

moduleclass = 'compiler'
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
don't install Intel MPI runtime components (mpi-rt), cfr. https://github.com/easybuilders/easybuild-easyconfigs/pull/3793
author: Bart Oldeman (Compute Canada), updated for 2020.1.217 by Kenneth Hoste (HPC-UGent)
--- parallel_studio_xe_2020_update1_composer_edition/pset/mediaconfig.xml.orig 2020-03-31 17:31:11.362126388 +0200
+++ parallel_studio_xe_2020_update1_composer_edition/pset/mediaconfig.xml 2020-03-31 17:31:30.691960582 +0200
@@ -870,7 +870,7 @@
</Layers>
<InstallDir>${COMPLIB_ROOT}</InstallDir>
<GUID>1585047222050</GUID>
- <Component depend="48.3;1.1;1.3;1.91;1.12;1.7;1.24;148.2" id="1" invisible="0" mandatory="0" platform="INTEL64">
+ <Component depend="48.3;1.1;1.3;1.91;1.12;1.7;1.24" id="1" invisible="0" mandatory="0" platform="INTEL64">
<Name>Intel Fortran Compiler for Intel(R) 64</Name>
<Description>Intel Fortran Compiler 19.1 Update 1</Description>
<Name locale="ja_JP.UTF-8">インテル(R) Fortran コンパイラー (インテル(R) 64)</Name>
18 changes: 18 additions & 0 deletions easybuild/easyconfigs/i/iimpi/iimpi-2020a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild
easyblock = 'Toolchain'

name = 'iimpi'
version = '2020a'

homepage = 'https://software.intel.com/parallel-studio-xe'
description = """Intel C/C++ and Fortran compilers, alongside Intel MPI."""

toolchain = SYSTEM

local_compver = '2020.1.217'
dependencies = [
('iccifort', local_compver),
('impi', '2019.7.217', '', ('iccifort', local_compver)),
]

moduleclass = 'toolchain'
39 changes: 39 additions & 0 deletions easybuild/easyconfigs/i/imkl/imkl-2020.1.217-iimpi-2020a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# This is an easyconfig file for EasyBuild, see https://easybuilders.github.io/easybuild/

name = 'imkl'
version = '2020.1.217'

homepage = 'https://software.intel.com/mkl'
description = """Intel Math Kernel Library is a library of highly optimized,
extensively threaded math routines for science, engineering, and financial
applications that require maximum performance. Core math functions include
BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more."""

toolchain = {'name': 'iimpi', 'version': '2020a'}

source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16533/']
sources = ['l_mkl_%(version)s.tgz']
checksums = ['082a4be30bf4f6998e4d6e3da815a77560a5e66a68e254d161ab96f07086066d']

dontcreateinstalldir = True

components = ['intel-mkl']

license_file = HOME + '/licenses/intel/license.lic'

interfaces = True

postinstallcmds = [
# extract the examples
'tar xvzf %(installdir)s/mkl/examples/examples_cluster_c.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_cluster_f.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_core_c.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_core_f.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_f95.tgz -C %(installdir)s/mkl/examples/',
]

modextravars = {
'MKL_EXAMPLES': '%(installdir)s/mkl/examples/',
}

moduleclass = 'numlib'
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild

name = 'impi'
version = '2019.7.217'

homepage = 'https://software.intel.com/en-us/intel-mpi-library/'
description = "Intel MPI Library, compatible with MPICH ABI"

toolchain = {'name': 'iccifort', 'version': '2020.1.217'}

source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16546/']
sources = ['l_mpi_%(version)s.tgz']
checksums = ['90383b0023f84ac003a55d8bb29dbcf0c639f43a25a2d8d8698a16e770ac9c07']

dependencies = [
# needed by libfabric provider MLX introduced in Intel MPI v2019.6,
# https://software.intel.com/en-us/articles/improve-performance-and-stability-with-intel-mpi-library-on-infiniband
('UCX', '1.8.0'),
]

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 = {
# to enable SLURM integration with srun (site-specific)
# 'I_MPI_PMI_LIBRARY': 'libpmi2.so',

# set this if mpirun gives you a floating point exception (SIGFPE), see
# https://software.intel.com/en-us/forums/intel-clusters-and-hpc-technology/topic/852307
# 'I_MPI_HYDRA_TOPOLIB': 'ipl',
}

# may be needed if you enable I_MPI_PMI_LIBRARY above
# osdependencies = [('slurm-libpmi')]

moduleclass = 'mpi'
21 changes: 21 additions & 0 deletions easybuild/easyconfigs/i/intel/intel-2020a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
easyblock = 'Toolchain'

name = 'intel'
version = '2020a'

homepage = 'https://easybuild.readthedocs.io/en/master/Common-toolchains.html#intel-toolchain'
description = "Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL)."

toolchain = SYSTEM

local_compver = '2020.1.217'
local_gccver = '9.3.0'
dependencies = [
('GCCcore', local_gccver),
('binutils', '2.34', '', ('GCCcore', local_gccver)),
('iccifort', local_compver),
('impi', '2019.7.217', '', ('iccifort', local_compver)),
('imkl', local_compver, '', ('iimpi', version)),
]

moduleclass = 'toolchain'