Skip to content
Snippets Groups Projects
Commit 0f6bcea9 authored by Tony Ranini's avatar Tony Ranini Committed by Anke Kreuzer
Browse files

BDPO PMPI Wrapper 4.3.2 for stage 2023

parent 06f5a9ec
No related branches found
No related tags found
No related merge requests found
##
# Author: Eviden <bds-powerefficiency@eviden.com>
##
easyblock = 'ConfigureMake'
name = 'bdpo-pmpi-wrapper'
version = '4.3.2'
toolchain = {'name': 'gpsmpi', 'version': '2022a'}
description = """This package provides the Power Efficiency Dynamic Power Optimizer PMPI Wrapper product.
"""
local_lib_name = f"bdpopmpiwrapper-{toolchain['name']}-{toolchain['version']}.so"
local_env_map = [
f"MPICC=$EBROOTPSMPI/bin/mpicc",
'MPICH=1',
f"DPO_PMPI_MPI_FLAVOR={toolchain['name']}",
f"DPO_PMPI_MPI_VERSION={toolchain['version']}",
'INSTALL_OPT_DIR=%(installdir)s',
'INSTALL_LIB_DIR=""',
]
modextravars = {
'BDPO_PMPIWRAPPER': f"%(installdir)s/{local_lib_name}"
}
homepage = 'https://www.eviden.com'
source_urls = ['file:///p/project/deepsea/wp2/sources/bdpo-pmpi-wrapper']
sources = ['bdpo-pmpi-wrapper-%(version)s.tar.gz']
checksums = ['b3eceee09afad75c628c324081a2e443b1ef13dcb57a81b3db5a1099eb02e83b']
prebuildopts = ' '.join(local_env_map)
preinstallopts = ' '.join(local_env_map)
# Hacky way to disable configure step (by returning true and comment all added things)
configure_cmd_prefix = '/bin/true # Disabling whats coming next:'
sanity_check_paths = {
'files': [local_lib_name],
'dirs': [],
}
moduleclass = 'perf'
##
# Author: Eviden <bds-powerefficiency@eviden.com>
##
easyblock = 'ConfigureMake'
name = 'bdpo-pmpi-wrapper'
version = '4.3.2'
toolchain = {'name': 'gpsmpi', 'version': '2022b'}
description = """This package provides the Power Efficiency Dynamic Power Optimizer PMPI Wrapper product.
"""
local_lib_name = f"bdpopmpiwrapper-{toolchain['name']}-{toolchain['version']}.so"
local_env_map = [
f"MPICC=$EBROOTPSMPI/bin/mpicc",
'MPICH=1',
f"DPO_PMPI_MPI_FLAVOR={toolchain['name']}",
f"DPO_PMPI_MPI_VERSION={toolchain['version']}",
'INSTALL_OPT_DIR=%(installdir)s',
'INSTALL_LIB_DIR=""',
]
modextravars = {
'BDPO_PMPIWRAPPER': f"%(installdir)s/{local_lib_name}"
}
homepage = 'https://www.eviden.com'
source_urls = ['file:///p/project/deepsea/wp2/sources/bdpo-pmpi-wrapper']
sources = ['bdpo-pmpi-wrapper-%(version)s.tar.gz']
checksums = ['b3eceee09afad75c628c324081a2e443b1ef13dcb57a81b3db5a1099eb02e83b']
prebuildopts = ' '.join(local_env_map)
preinstallopts = ' '.join(local_env_map)
# Hacky way to disable configure step (by returning true and comment all added things)
configure_cmd_prefix = '/bin/true # Disabling whats coming next:'
sanity_check_paths = {
'files': [local_lib_name],
'dirs': [],
}
moduleclass = 'perf'
##
# Author: Eviden <bds-powerefficiency@eviden.com>
##
easyblock = 'ConfigureMake'
name = 'bdpo-pmpi-wrapper'
version = '4.3.2'
toolchain = {'name': 'npsmpic', 'version': '2022a'}
description = """This package provides the Power Efficiency Dynamic Power Optimizer PMPI Wrapper product.
"""
local_lib_name = f"bdpopmpiwrapper-{toolchain['name']}-{toolchain['version']}.so"
local_env_map = [
f"MPICC=$EBROOTPSMPI/bin/mpicc",
'MPICH=1',
f"DPO_PMPI_MPI_FLAVOR={toolchain['name']}",
f"DPO_PMPI_MPI_VERSION={toolchain['version']}",
'INSTALL_OPT_DIR=%(installdir)s',
'INSTALL_LIB_DIR=""',
]
modextravars = {
'BDPO_PMPIWRAPPER': f"%(installdir)s/{local_lib_name}"
}
homepage = 'https://www.eviden.com'
source_urls = ['file:///p/project/deepsea/wp2/sources/bdpo-pmpi-wrapper']
sources = ['bdpo-pmpi-wrapper-%(version)s.tar.gz']
checksums = ['b3eceee09afad75c628c324081a2e443b1ef13dcb57a81b3db5a1099eb02e83b']
prebuildopts = ' '.join(local_env_map)
preinstallopts = ' '.join(local_env_map)
# Hacky way to disable configure step (by returning true and comment all added things)
configure_cmd_prefix = '/bin/true # Disabling whats coming next:'
sanity_check_paths = {
'files': [local_lib_name],
'dirs': [],
}
moduleclass = 'perf'
#!/usr/bin/env python3
from string import Template
# List of dict (version = version semver, sha256 = sha256 checksum of source file)
all_dpo_versions = [
{'semver': '4.3.2', 'sha256':'b3eceee09afad75c628c324081a2e443b1ef13dcb57a81b3db5a1099eb02e83b'}
]
# List of dict (name = MPI provider name, version = MPI provider version,
# mpicc = path to the MPI compiler binary)
all_mpi_provider = [
{'name': 'gpsmpi', 'version': '2022a', 'mpicc': '$EBROOTPSMPI/bin/mpicc', 'mpich': '1'},
{'name': 'gpsmpi', 'version': '2022b', 'mpicc': '$EBROOTPSMPI/bin/mpicc', 'mpich': '1'},
{'name': 'npsmpic', 'version': '2022a', 'mpicc': '$EBROOTPSMPI/bin/mpicc', 'mpich': '1'},
]
eb_dpo_template = Template('''
##
# Author: Eviden <bds-powerefficiency@eviden.com>
##
easyblock = 'ConfigureMake'
name = 'bdpo-pmpi-wrapper'
version = '$product_version'
toolchain = {'name': '$toolchain_name', 'version': '$toolchain_version'}
description = """This package provides the Power Efficiency Dynamic Power Optimizer PMPI Wrapper product.
"""
local_lib_name = f"bdpopmpiwrapper-{toolchain['name']}-{toolchain['version']}.so"
local_env_map = [
f"MPICC=$eb_mpicc_path",
'MPICH=$is_mpich',
f"DPO_PMPI_MPI_FLAVOR={toolchain['name']}",
f"DPO_PMPI_MPI_VERSION={toolchain['version']}",
'INSTALL_OPT_DIR=%(installdir)s',
'INSTALL_LIB_DIR=""',
]
modextravars = {
'BDPO_PMPIWRAPPER': f"%(installdir)s/{local_lib_name}"
}
homepage = 'https://www.eviden.com'
source_urls = ['file:///p/project/deepsea/wp2/sources/bdpo-pmpi-wrapper']
sources = ['bdpo-pmpi-wrapper-%(version)s.tar.gz']
checksums = ['$source_version_checksum']
prebuildopts = ' '.join(local_env_map)
preinstallopts = ' '.join(local_env_map)
# Hacky way to disable configure step (by returning true and comment all added things)
configure_cmd_prefix = '/bin/true # Disabling whats coming next:'
sanity_check_paths = {
'files': [local_lib_name],
'dirs': [],
}
moduleclass = 'perf'
''')
for version in all_dpo_versions:
for provider in all_mpi_provider:
with open(f"bdpo-pmpi-wrapper-{version['semver']}-{provider['name']}-{provider['version']}.eb", 'wt+') as f:
f.write(
eb_dpo_template.substitute({
'product_version': version['semver'],
'toolchain_name': provider['name'],
'toolchain_version': provider['version'],
'eb_mpicc_path': provider['mpicc'],
'source_version_checksum': version['sha256'],
'is_mpich': provider['mpich'],
})
)
easyblock = 'Toolchain'
name = 'gpsmpi'
version = '2022b'
homepage = '(none)'
description = 'GCC and GFortran based compiler toolchain, including Parastation MPICH2 for MPI support.'
toolchain = SYSTEM
local_compiler = ('GCC', '11.3.0')
dependencies = [
local_compiler,
('psmpi', '5.8.1-1', '', local_compiler),
]
moduleclass = 'toolchain'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment