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

deprecate the ictce toolchain #2667

Merged
merged 1 commit into from
Nov 21, 2018
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
4 changes: 4 additions & 0 deletions easybuild/toolchains/ictce.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,7 @@ class Ictce(Iimpi, IntelMKL, IntelFFTW):
"""
NAME = 'ictce'
SUBTOOLCHAIN = [Iimpi.NAME, Iimkl.NAME]

def is_deprecated(self):
"""Return whether or not this toolchain is deprecated."""
return True
14 changes: 7 additions & 7 deletions test/framework/docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ def test_list_software(self):
r'homepage: http://www.gzip.org/',
r'',
r" \* gzip v1.4: GCC/4.6.3, dummy",
r" \* gzip v1.5: goolf/1.4.10, ictce/4.1.13",
r" \* gzip v1.5: goolf/1.4.10, intel/2018a",
'',
]))
txt = list_software(output_format='txt', detailed=True)
Expand Down Expand Up @@ -213,12 +213,12 @@ def test_list_software(self):
r'',
r'\*homepage\*: http://www.gzip.org/',
r'',
r'======= ==================================',
r'version toolchain ',
r'======= ==================================',
r'``1.4`` ``GCC/4.6.3``, ``dummy`` ',
r'``1.5`` ``goolf/1.4.10``, ``ictce/4.1.13``',
r'======= ==================================',
r'======= =================================',
r'version toolchain ',
r'======= =================================',
r'``1.4`` ``GCC/4.6.3``, ``dummy`` ',
r'``1.5`` ``goolf/1.4.10``, ``intel/2018a``',
r'======= =================================',
]))
txt = list_software(output_format='rst', detailed=True)
self.assertTrue(expected.match(txt), "Pattern '%s' found in: %s" % (expected.pattern, txt))
Expand Down
20 changes: 10 additions & 10 deletions test/framework/easyconfig.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,8 @@
EXPECTED_DOTTXT_TOY_DEPS = """digraph graphname {
"GCC/4.7.2 (EXT)";
toy;
ictce;
toy -> ictce;
intel;
toy -> intel;
toy -> "GCC/4.7.2 (EXT)";
}
"""
Expand Down Expand Up @@ -1005,8 +1005,8 @@ def test_format_equivalence_basic(self):
('gzip-1.4-GCC-4.6.3.eb', 'gzip.eb', {'version': '1.4', 'toolchain': {'name': 'GCC', 'version': '4.6.3'}}),
('gzip-1.5-goolf-1.4.10.eb', 'gzip.eb',
{'version': '1.5', 'toolchain': {'name': 'goolf', 'version': '1.4.10'}}),
('gzip-1.5-ictce-4.1.13.eb', 'gzip.eb',
{'version': '1.5', 'toolchain': {'name': 'ictce', 'version': '4.1.13'}}),
('gzip-1.5-intel-2018a.eb', 'gzip.eb',
{'version': '1.5', 'toolchain': {'name': 'intel', 'version': '2018a'}}),
]:
eb_file1 = glob.glob(os.path.join(easyconfigs_path, 'v1.0', '*', '*', eb_file1))[0]
ec1 = EasyConfig(eb_file1, validate=False)
Expand Down Expand Up @@ -1284,7 +1284,7 @@ def test_external_dependencies(self):

deps = ec.dependencies()
self.assertEqual(len(deps), 7)
correct_deps = ['ictce/4.1.13', 'GCC/4.7.2', 'foobar/1.2.3', 'test/9.7.5', 'pi/3.14', 'hidden/.1.2.3',
correct_deps = ['intel/2018a', 'GCC/4.7.2', 'foobar/1.2.3', 'test/9.7.5', 'pi/3.14', 'hidden/.1.2.3',
'somebuilddep/0.1']
self.assertEqual([d['short_mod_name'] for d in deps], correct_deps)
self.assertEqual([d['full_mod_name'] for d in deps], correct_deps)
Expand Down Expand Up @@ -1440,7 +1440,7 @@ def test_dump(self):
'g/goolf/goolf-1.4.10.eb',
's/ScaLAPACK/ScaLAPACK-2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2.eb',
'g/gzip/gzip-1.4-GCC-4.6.3.eb',
'p/Python/Python-2.7.10-ictce-4.1.13.eb',
'p/Python/Python-2.7.10-intel-2018a.eb',
]
for ecfile in ecfiles:
test_ec = os.path.join(self.test_prefix, 'test.eb')
Expand Down Expand Up @@ -1690,8 +1690,8 @@ def test_dep_graph(self):
dep_graph(dot_file, ordered_ecs)

# hard check for expect .dot file contents
# 3 nodes should be there: 'GCC/4.7.2 (EXT)', 'toy', and 'ictce/4.1.13'
# and 2 edges: 'toy -> ictce' and 'toy -> "GCC/4.7.2 (EXT)"'
# 3 nodes should be there: 'GCC/4.7.2 (EXT)', 'toy', and 'intel/2018a'
# and 2 edges: 'toy -> intel' and 'toy -> "GCC/4.7.2 (EXT)"'
dottxt = read_file(dot_file)
self.assertEqual(dottxt, EXPECTED_DOTTXT_TOY_DEPS)

Expand All @@ -1711,7 +1711,7 @@ def test_ActiveMNS_det_full_module_name(self):
ec = EasyConfig(ec_file)

self.assertEqual(ActiveMNS().det_full_module_name(ec), 'toy/0.0-deps')
self.assertEqual(ActiveMNS().det_full_module_name(ec['dependencies'][0]), 'ictce/4.1.13')
self.assertEqual(ActiveMNS().det_full_module_name(ec['dependencies'][0]), 'intel/2018a')
self.assertEqual(ActiveMNS().det_full_module_name(ec['dependencies'][1]), 'GCC/4.7.2')

ec_file = os.path.join(topdir, 'easyconfigs', 'test_ecs', 'g', 'gzip', 'gzip-1.4-GCC-4.6.3.eb')
Expand Down Expand Up @@ -1981,7 +1981,7 @@ def test_parse_deps_templates(self):
test_ecs = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'easyconfigs', 'test_ecs')

pyec = os.path.join(self.test_prefix, 'Python-2.7.10-goolf-1.4.10.eb')
shutil.copy2(os.path.join(test_ecs, 'p', 'Python', 'Python-2.7.10-ictce-4.1.13.eb'), pyec)
shutil.copy2(os.path.join(test_ecs, 'p', 'Python', 'Python-2.7.10-intel-2018a.eb'), pyec)
write_file(pyec, "\ntoolchain = {'name': 'goolf', 'version': '1.4.10'}", append=True)

ec_txt = '\n'.join([
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
easyblock = "Toolchain"

name = 'ictce'
version = '3.2.2.u3'
name = 'intel'
version = '2012a'

homepage = 'http://software.intel.com/en-us/intel-cluster-toolchain-compiler/'
description = """Intel Cluster Toolkit Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MPI & Intel MKL."""

toolchain = {'name': 'dummy', 'version': 'dummy'}

# fake/empty ictce/3.2.2.u3 toolchain, just for testing purposes
# fake/empty intel/2012a toolchain, just for testing purposes
dependencies = [
# ('icc', '11.1.073'),
# ('ifort', '11.1.073'),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ version = '1.5'
homepage = "http://www.gzip.org/"
description = "gzip (GNU zip) is a popular data compression program as a replacement for compress"

toolchain = {'name': 'ictce', 'version': '4.1.13'}
toolchain = {'name': 'intel', 'version': '2018a'}

# eg. http://ftp.gnu.org/gnu/gzip/gzip-1.5.tar.gz
source_urls = ['http://ftpmirror.gnu.org/gzip']
Expand Down
21 changes: 0 additions & 21 deletions test/framework/easyconfigs/test_ecs/i/ictce/ictce-4.1.13.eb

This file was deleted.

23 changes: 23 additions & 0 deletions test/framework/easyconfigs/test_ecs/i/intel/intel-2018a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
easyblock = "Toolchain"

name = 'intel'
version = '2018a'

homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = """Intel Cluster Toolkit Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MPI & Intel MKL."""

toolchain = {'name': 'dummy', 'version': 'dummy'}

compver = '2011.13.367'

# fake intel toolchain easyconfig, no dependencies (good enough for testing)
fake_dependencies = [
('GCCcore', '6.4.0'),
('binutils', '2.28', '-GCCcore-6.4.0'),
('icc', '2018.1.163', '-GCCcore-6.4.0'),
('ifort', '2018.1.163', '-GCCcore-6.4.0'),
('impi', '2018.1.163', '', ('iccifort', '2018.1.163-GCCcore-6.4.0')),
('imkl', '2018.1.163', '', ('iimpi', version)),
]

moduleclass = 'toolchain'
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ homepage = 'http://python.org/'
description = """Python is a programming language that lets you work more quickly and integrate your systems
more effectively."""

toolchain = {'name': 'ictce', 'version': '4.1.13'}
toolchain = {'name': 'intel', 'version': '2018a'}
toolchainopts = {'pic': True, 'opt': True, 'optarch': True}

numpyversion = '1.9.2'
Expand Down
2 changes: 1 addition & 1 deletion test/framework/easyconfigs/test_ecs/t/toy/toy-0.0-deps.eb
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ checksums = [[
patches = ['toy-0.0_fix-silly-typo-in-printf-statement.patch']

dependencies = [
('ictce', '4.1.13', '', True),
('intel', '2018a', '', True),
('GCC/4.7.2', EXTERNAL_MODULE),
]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ version = '1.5'
homepage = "http://www.%(name)s.org/"
description = "%(namelower)s (GNU zip) is a popular data compression program as a replacement for compress"

toolchain = {'name': 'ictce', 'version': '4.1.13'}
toolchain = {'name': 'intel', 'version': '2018a'}

# eg. http://ftp.gnu.org/gnu/gzip/gzip-1.5.tar.gz
source_urls = ['https://ftpmirror.gnu.org/gnu/gzip']
Expand Down
2 changes: 1 addition & 1 deletion test/framework/easyconfigs/v2.0/doesnotexist.eb
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ sanity_check_paths = {'files': ["bin/gunzip", "bin/gzip"], 'dirs': []}

[SUPPORTED]
versions=1.0.0,>= 0.5.0
toolchains=dummy > 5,GCC == 3.0.0,ictce < 1.0
toolchains=dummy > 5,GCC == 3.0.0,intel < 1.0

[goolf > 1]
versions=1.5.0
Expand Down
2 changes: 1 addition & 1 deletion test/framework/easyconfigs/v2.0/gzip.eb
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ sanity_check_commands = [True, ('gzip', '--version')]

[SUPPORTED]
versions = 1.4, 1.5
toolchains = dummy == dummy, goolf, GCC == 4.6.3, goolf == 1.4.10, ictce == 4.1.13
toolchains = dummy == dummy, goolf, GCC == 4.6.3, goolf == 1.4.10, intel == 2018a

[DEFAULT]
easyblock = ConfigureMake
Expand Down
2 changes: 1 addition & 1 deletion test/framework/easyconfigs/v2.0/libpng.eb
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ sources = [SOURCELOWER_TAR_GZ]

[SUPPORTED]
versions = 1.5.10, 1.5.11, 1.5.13, 1.5.14, 1.6.2, 1.6.3, 1.6.6
toolchains = goolf == 1.4.10, ictce == 4.1.13, goalf == 1.1.0-no-OFED
toolchains = goolf == 1.4.10, intel == 2018a, goalf == 1.1.0-no-OFED

[DEFAULT]
easyblock = ConfigureMake
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ description: |
Python is a programming language that lets you work more quickly and integrate your systems
more effectively.

toolchain: {name: ictce, version: 4.1.13}
toolchain: {name: intel, version: 2018a}
toolchainopts: {pic: True, opt: True, optarch: True}

source_urls: ['http://www.python.org/ftp/python/%(version)s/']
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
_internal_variables_:
- &compver 2011.13.367
- &compver 2018.1.163

easyblock: Toolchain

name: ictce
version: 4.1.13
name: intel
version: 2018a

homepage: http://software.intel.com/en-us/intel-cluster-toolkit-compiler/
description:
Expand All @@ -13,12 +13,12 @@ description:

toolchain: {name: dummy, version: dummy}

# fake ictce toolchain easyconfig, no dependencies (good enough for testing)
# fake intel toolchain easyconfig, no dependencies (good enough for testing)
fake_dependencies: [
[icc, *compver],
[ifort, *compver],
[impi, 4.1.0.027],
[imkl, 10.3.12.361]
[impi, 2018.1.163],
[imkl, 2018.1.163]
]

moduleclass: toolchain
8 changes: 4 additions & 4 deletions test/framework/module_generator.py
Original file line number Diff line number Diff line change
Expand Up @@ -784,7 +784,7 @@ def test_mns():
'gzip-1.4.eb': 'gzip/1.4',
'gzip-1.4-GCC-4.6.3.eb': 'gzip/1.4-GCC-4.6.3',
'gzip-1.5-goolf-1.4.10.eb': 'gzip/1.5-goolf-1.4.10',
'gzip-1.5-ictce-4.1.13.eb': 'gzip/1.5-ictce-4.1.13',
'gzip-1.5-intel-2018a.eb': 'gzip/1.5-intel-2018a',
'toy-0.0.eb': 'toy/0.0',
'toy-0.0-multiple.eb': 'toy/0.0-somesuffix', # first block sets versionsuffix to '-somesuffix'
}
Expand Down Expand Up @@ -826,7 +826,7 @@ def test_mns():
'gzip-1.4.eb': 'gzip/1.4',
'gzip-1.4-GCC-4.6.3.eb': 'gnu/gzip/1.4',
'gzip-1.5-goolf-1.4.10.eb': 'gnu/openmpi/gzip/1.5',
'gzip-1.5-ictce-4.1.13.eb': 'intel/intelmpi/gzip/1.5',
'gzip-1.5-intel-2018a.eb': 'intel/intelmpi/gzip/1.5',
'toy-0.0.eb': 'toy/0.0',
'toy-0.0-multiple.eb': 'toy/0.0', # test module naming scheme ignores version suffixes
}
Expand All @@ -844,7 +844,7 @@ def test_mns():
'gzip-1.4.eb': 'gzip/53d5c13e85cb6945bd43a58d1c8d4a4c02f3462d',
'gzip-1.4-GCC-4.6.3.eb': 'gzip/585eba598f33c64ef01c6fa47af0fc37f3751311',
'gzip-1.5-goolf-1.4.10.eb': 'gzip/fceb41e04c26b540b7276c4246d1ecdd1e8251c9',
'gzip-1.5-ictce-4.1.13.eb': 'gzip/ae16b3a0a330d4323987b360c0d024f244ac4498',
'gzip-1.5-intel-2018a.eb': 'gzip/0a4725f4720103eff8ffdadf8ffb187b988fb805',
'toy-0.0.eb': 'toy/cb0859b7b15723c826cd8504e5fde2573ab7b687',
'toy-0.0-multiple.eb': 'toy/cb0859b7b15723c826cd8504e5fde2573ab7b687',
}
Expand Down Expand Up @@ -909,7 +909,7 @@ def test_mod_name_validation(self):
self.assertTrue(is_valid_module_name('gzip/goolf-1.4.10-suffix'))
self.assertTrue(is_valid_module_name('GCC/4.7.2'))
self.assertTrue(is_valid_module_name('foo-bar/1.2.3'))
self.assertTrue(is_valid_module_name('ictce'))
self.assertTrue(is_valid_module_name('intel'))

def test_is_short_modname_for(self):
"""Test is_short_modname_for method of module naming schemes."""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ proc ModulesHelp { } {

module-whatis {C and C++ compiler from Intel - Homepage: http://software.intel.com/en-us/intel-compilers/}

set root /tmp/icc/2011.13.367
set root /tmp/icc/2018.1.163

conflict icc

Expand All @@ -20,8 +20,8 @@ prepend-path PATH $root/bin
prepend-path PATH $root/bin/intel64

setenv EBROOTICC "$root"
setenv EBVERSIONICC "2011.13.367"
setenv EBDEVELICC "$root/easybuild/icc-2011.13.367-easybuild-devel"
setenv EBVERSIONICC "2018.1.163"
setenv EBDEVELICC "$root/easybuild/icc-2018.1.163-easybuild-devel"

prepend-path INTEL_LICENSE_FILE /tmp/license.lic
prepend-path NLSPATH $root/idb/intel64/locale/%l_%t/%N
Expand Down
25 changes: 0 additions & 25 deletions test/framework/modules/iccifort/2011.13.367

This file was deleted.

25 changes: 25 additions & 0 deletions test/framework/modules/iccifort/2018.1.163
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#%Module

proc ModulesHelp { } {
puts stderr { Intel C/C++ and Fortran compilers
}
}

module-whatis {Intel C/C++ and Fortran compilers}

set root /tmp/iccifort/2018.1.163

conflict iccifort

if { ![is-loaded icc/2018.1.163] } {
module load icc/2018.1.163
}

if { ![is-loaded ifort/2018.1.163] } {
module load ifort/2018.1.163
}


setenv EBROOTICCIFORT "$root"
setenv EBVERSIONICCIFORT "2018.1.163"
setenv EBDEVELICCIFORT "$root/easybuild/iccifort-2018.1.163-easybuild-devel"
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ proc ModulesHelp { } {

module-whatis {Fortran compiler from Intel - Homepage: http://software.intel.com/en-us/intel-compilers/}

set root /tmp/ifort/2011.13.367
set root /tmp/ifort/2018.1.163

conflict ifort

Expand All @@ -20,8 +20,8 @@ prepend-path PATH $root/bin
prepend-path PATH $root/bin/intel64

setenv EBROOTIFORT "$root"
setenv EBVERSIONIFORT "2011.13.367"
setenv EBDEVELIFORT "$root/easybuild/ifort-2011.13.367-easybuild-devel"
setenv EBVERSIONIFORT "2018.1.163"
setenv EBDEVELIFORT "$root/easybuild/ifort-2018.1.163-easybuild-devel"

prepend-path INTEL_LICENSE_FILE /tmp/license.lic
prepend-path NLSPATH $root/idb/intel64/locale/%l_%t/%N
Expand Down
Loading