Skip to content

Commit

Permalink
Merge pull request #11337 from boegel/20200923141429_new_pr_HPL23
Browse files Browse the repository at this point in the history
{toolchain} intel/2020b
  • Loading branch information
Micket authored Nov 9, 2020
2 parents f3fbdbe + a3b4f88 commit 3ee8e5a
Show file tree
Hide file tree
Showing 7 changed files with 188 additions and 0 deletions.
21 changes: 21 additions & 0 deletions easybuild/easyconfigs/h/HPL/HPL-2.3-intel-2020b.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': '2020b'}
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.4.304.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.4.304'

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/17117/']
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_update3_composer_edition.tgz
'ac1efeff608a8c3a416e6dfe20364061e8abf62d35fbaacdffe3fc9676fc1aa3',
# iccifort-2020.4.304_no_mpi_rt_dependency.patch
'c330473fc452214b5fffafc5dc962e99fd369582ff9efeda6548b5895a67abb1',
]

local_gccver = '10.2.0'

dependencies = [
('GCCcore', local_gccver),
('binutils', '2.35', '', ('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.4.304 by Kenneth Hoste (HPC-UGent)
--- parallel_studio_xe_2020_update4_composer_edition/pset/mediaconfig.xml.orig 2020-10-27 18:50:09.839380689 +0100
+++ parallel_studio_xe_2020_update4_composer_edition/pset/mediaconfig.xml 2020-10-27 19:49:19.097749293 +0100
@@ -870,7 +870,7 @@
</Layers>
<InstallDir>${COMPLIB_ROOT}</InstallDir>
<GUID>1602677589848</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 3</Description>
<Name locale="ja_JP.UTF-8">インテル(R) Fortran コンパイラー (インテル(R) 64)</Name>
18 changes: 18 additions & 0 deletions easybuild/easyconfigs/i/iimpi/iimpi-2020b.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 = '2020b'

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

toolchain = SYSTEM

local_compver = '2020.4.304'
dependencies = [
('iccifort', local_compver),
('impi', '2019.9.304', '', ('iccifort', local_compver)),
]

moduleclass = 'toolchain'
39 changes: 39 additions & 0 deletions easybuild/easyconfigs/i/imkl/imkl-2020.4.304-iimpi-2020b.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.4.304'

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': '2020b'}

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

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,36 @@
# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild

name = 'impi'
version = '2019.9.304'

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

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

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

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.9.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',
}

# 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-2020b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
easyblock = 'Toolchain'

name = 'intel'
version = '2020b'

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.4.304'
local_gccver = '10.2.0'
dependencies = [
('GCCcore', local_gccver),
('binutils', '2.35', '', ('GCCcore', local_gccver)),
('iccifort', local_compver),
('impi', '2019.9.304', '', ('iccifort', local_compver)),
('imkl', local_compver, '', ('iimpi', version)),
]

moduleclass = 'toolchain'

0 comments on commit 3ee8e5a

Please sign in to comment.