Removed references to BlueGene/Q in Spack builtin packages
This commit is contained in:
parent
98701279df
commit
f128e7de54
@ -19,7 +19,6 @@ class AppleLibunwind(Package):
|
|||||||
# Darwin must be expressed by listing a conflict with every
|
# Darwin must be expressed by listing a conflict with every
|
||||||
# platform that isn't Darwin/macOS
|
# platform that isn't Darwin/macOS
|
||||||
conflicts('platform=linux')
|
conflicts('platform=linux')
|
||||||
conflicts('platform=bgq')
|
|
||||||
conflicts('platform=cray')
|
conflicts('platform=cray')
|
||||||
|
|
||||||
# Override the fetcher method to throw a useful error message;
|
# Override the fetcher method to throw a useful error message;
|
||||||
|
@ -169,9 +169,6 @@ def charmarch(self):
|
|||||||
("win", "x86_64", "netlrts"): "netlrts-win-x86_64",
|
("win", "x86_64", "netlrts"): "netlrts-win-x86_64",
|
||||||
("cnl", "x86_64", "gni"): "gni-crayxc",
|
("cnl", "x86_64", "gni"): "gni-crayxc",
|
||||||
("cnl", "x86_64", "mpi"): "mpi-crayxc",
|
("cnl", "x86_64", "mpi"): "mpi-crayxc",
|
||||||
("cnk", "x86_64", "mpi"): "mpi-bluegeneq",
|
|
||||||
("cnk", "x86_64", "pami"): "pami-bluegeneq",
|
|
||||||
("cnk", "x86_64", "pamilrts"): "pamilrts-bluegeneq",
|
|
||||||
}
|
}
|
||||||
if (plat, mach, comm) not in versions:
|
if (plat, mach, comm) not in versions:
|
||||||
raise InstallError(
|
raise InstallError(
|
||||||
|
@ -69,7 +69,7 @@ def configure_args(self):
|
|||||||
|
|
||||||
# TODO: add --enable-gpu, --disable-sse-assembly, --enable-sparc64
|
# TODO: add --enable-gpu, --disable-sse-assembly, --enable-sparc64
|
||||||
# and --enable-neon-arch64
|
# and --enable-neon-arch64
|
||||||
simd_features = ['vsx', 'sse', 'avx', 'avx2', 'avx512', 'bgp', 'bgq']
|
simd_features = ['vsx', 'sse', 'avx', 'avx2', 'avx512']
|
||||||
|
|
||||||
for feature in simd_features:
|
for feature in simd_features:
|
||||||
msg = '--enable-{0}' if feature in spec.target else '--disable-{0}'
|
msg = '--enable-{0}' if feature in spec.target else '--disable-{0}'
|
||||||
|
@ -25,7 +25,7 @@ class Elsi(CMakePackage):
|
|||||||
)
|
)
|
||||||
variant(
|
variant(
|
||||||
'elpa2_kernel', default="none", description="ELPA2 Kernel",
|
'elpa2_kernel', default="none", description="ELPA2 Kernel",
|
||||||
values=('BGQ', 'AVX', 'AVX2', 'AVX512'), multi=False
|
values=('AVX', 'AVX2', 'AVX512'), multi=False
|
||||||
)
|
)
|
||||||
variant(
|
variant(
|
||||||
'enable_pexsi', default=False, description='Enable PEXSI support'
|
'enable_pexsi', default=False, description='Enable PEXSI support'
|
||||||
|
@ -38,10 +38,6 @@ class Hpctoolkit(AutotoolsPackage):
|
|||||||
description='Build for Cray compute nodes, including '
|
description='Build for Cray compute nodes, including '
|
||||||
'hpcprof-mpi.')
|
'hpcprof-mpi.')
|
||||||
|
|
||||||
variant('bgq', default=False,
|
|
||||||
description='Build for Blue Gene compute nodes, including '
|
|
||||||
'hpcprof-mpi (up to 2019.12.28 only).')
|
|
||||||
|
|
||||||
variant('mpi', default=False,
|
variant('mpi', default=False,
|
||||||
description='Build hpcprof-mpi, the MPI version of hpcprof.')
|
description='Build hpcprof-mpi, the MPI version of hpcprof.')
|
||||||
|
|
||||||
@ -73,8 +69,7 @@ class Hpctoolkit(AutotoolsPackage):
|
|||||||
depends_on('gotcha@1.0.3:')
|
depends_on('gotcha@1.0.3:')
|
||||||
depends_on('intel-tbb+shared')
|
depends_on('intel-tbb+shared')
|
||||||
depends_on('libdwarf')
|
depends_on('libdwarf')
|
||||||
depends_on('libmonitor+hpctoolkit+bgq', when='+bgq')
|
depends_on('libmonitor+hpctoolkit')
|
||||||
depends_on('libmonitor+hpctoolkit~bgq', when='~bgq')
|
|
||||||
depends_on('libunwind@1.4: +xz')
|
depends_on('libunwind@1.4: +xz')
|
||||||
depends_on('mbedtls+pic')
|
depends_on('mbedtls+pic')
|
||||||
depends_on('xerces-c transcoder=iconv')
|
depends_on('xerces-c transcoder=iconv')
|
||||||
@ -96,9 +91,6 @@ class Hpctoolkit(AutotoolsPackage):
|
|||||||
conflicts('+cuda', when='@2018.0.0:2019.99.99',
|
conflicts('+cuda', when='@2018.0.0:2019.99.99',
|
||||||
msg='cuda requires 2020.03.01 or later')
|
msg='cuda requires 2020.03.01 or later')
|
||||||
|
|
||||||
conflicts('+bgq', when='@2020.03.01:',
|
|
||||||
msg='blue gene requires 2019.12.28 or earlier')
|
|
||||||
|
|
||||||
flag_handler = AutotoolsPackage.build_system_flags
|
flag_handler = AutotoolsPackage.build_system_flags
|
||||||
|
|
||||||
def configure_args(self):
|
def configure_args(self):
|
||||||
@ -138,12 +130,6 @@ def configure_args(self):
|
|||||||
'--enable-mpi-search=cray',
|
'--enable-mpi-search=cray',
|
||||||
'--enable-all-static',
|
'--enable-all-static',
|
||||||
])
|
])
|
||||||
elif '+bgq' in spec:
|
|
||||||
args.extend([
|
|
||||||
'--enable-mpi-search=bgq',
|
|
||||||
'--enable-all-static',
|
|
||||||
'--enable-bgq',
|
|
||||||
])
|
|
||||||
elif '+mpi' in spec:
|
elif '+mpi' in spec:
|
||||||
args.append('MPICXX=%s' % spec['mpi'].mpicxx)
|
args.append('MPICXX=%s' % spec['mpi'].mpicxx)
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ def build_targets(self):
|
|||||||
arch = 'MIC'
|
arch = 'MIC'
|
||||||
elif arch == 'x86_64' or arch == 'x86_32':
|
elif arch == 'x86_64' or arch == 'x86_32':
|
||||||
arch = 'x86'
|
arch = 'x86'
|
||||||
elif arch != 'bgq':
|
else:
|
||||||
raise InstallError('unknown architecture.')
|
raise InstallError('unknown architecture.')
|
||||||
|
|
||||||
if self.compiler.name == 'intel':
|
if self.compiler.name == 'intel':
|
||||||
@ -72,24 +72,7 @@ def build_targets(self):
|
|||||||
cxxflags += '-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_GNU '
|
cxxflags += '-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_GNU '
|
||||||
cxx_compile += '-Ofast -mavx -finline-functions'
|
cxx_compile += '-Ofast -mavx -finline-functions'
|
||||||
' -finline-limit=10000 -std=c++11'
|
' -finline-limit=10000 -std=c++11'
|
||||||
elif arch == 'bgq':
|
|
||||||
cxxflags += '-DLCALS_PLATFORM_BGQ -DLCALS_COMPILER_GNU '
|
|
||||||
cxx_compile += '-O3 -finline-functions -finline-limit=10000'
|
|
||||||
' -std=c++0x'
|
|
||||||
cxxflags += self.compiler.openmp_flag
|
cxxflags += self.compiler.openmp_flag
|
||||||
elif self.compiler.name == 'xl' and arch == 'bgp':
|
|
||||||
if self.compiler.version == Version('9') and arch == 'bgp':
|
|
||||||
cxxflags += '-DLCALS_PLATFORM_BGP -DLCALS_COMPILER_XLC9 '
|
|
||||||
cxx_compile += 'O3 -qarch=450d -qtune=450 -qalias=allp -qhot'
|
|
||||||
' -qsmp=omp '
|
|
||||||
elif self.compiler.version == Version('12') and arch == 'bgq':
|
|
||||||
cxxflags += '-DLCALS_PLATFORM_BGQ -DLCALS_COMPILER_XLC12 '
|
|
||||||
cxx_compile += '-O3 -qarch=qp -qhot=novector -qsimd=auto'
|
|
||||||
' -qlanglvl=extended0x -qnostrict -qinline=10000 -qsmp=omp '
|
|
||||||
elif self.compiler.name == 'clang':
|
|
||||||
if arch == 'bgq':
|
|
||||||
cxxflags += '-DLCALS_PLATFORM_BGQ -DLCALS_COMPILER_CLANG '
|
|
||||||
cxx_compile += '-O3 -finline-functions -ffast-math -std=c++0x'
|
|
||||||
|
|
||||||
targets.append('LCALS_ARCH=')
|
targets.append('LCALS_ARCH=')
|
||||||
cxx_compile += ' ' + cxxflags
|
cxx_compile += ' ' + cxxflags
|
||||||
|
@ -26,7 +26,6 @@ class Libglvnd(AutotoolsPackage):
|
|||||||
version('1.1.1', sha256='71918ed1261e4eece18c0b74b50dc62c0237b8d526e83277ef078554544720b9')
|
version('1.1.1', sha256='71918ed1261e4eece18c0b74b50dc62c0237b8d526e83277ef078554544720b9')
|
||||||
|
|
||||||
conflicts('platform=darwin', msg='libglvnd is linux specific')
|
conflicts('platform=darwin', msg='libglvnd is linux specific')
|
||||||
conflicts('platform=bgq', msg='libglvnd is linux specific')
|
|
||||||
|
|
||||||
depends_on('libxext')
|
depends_on('libxext')
|
||||||
depends_on('libx11')
|
depends_on('libx11')
|
||||||
|
@ -24,9 +24,6 @@ class Libmonitor(AutotoolsPackage):
|
|||||||
variant('hpctoolkit', default=False,
|
variant('hpctoolkit', default=False,
|
||||||
description='Configure for HPCToolkit')
|
description='Configure for HPCToolkit')
|
||||||
|
|
||||||
variant('bgq', default=False,
|
|
||||||
description='Configure for Blue Gene/Q')
|
|
||||||
|
|
||||||
# Configure for Krell and OpenSpeedshop.
|
# Configure for Krell and OpenSpeedshop.
|
||||||
variant('krellpatch', default=False,
|
variant('krellpatch', default=False,
|
||||||
description="Build with openspeedshop based patch.")
|
description="Build with openspeedshop based patch.")
|
||||||
@ -58,21 +55,4 @@ def configure_args(self):
|
|||||||
if '+hpctoolkit' in self.spec:
|
if '+hpctoolkit' in self.spec:
|
||||||
args.append('--enable-client-signals=%s' % self.signals)
|
args.append('--enable-client-signals=%s' % self.signals)
|
||||||
|
|
||||||
# TODO: Spack has trouble finding cross-compilers; the +bgq variant
|
|
||||||
# manually specifies the appropriate compiler to build for BGQ (by
|
|
||||||
# setting that here, Spack's choice of CC is overridden).
|
|
||||||
# If the user manually defines an entry in compilers.yaml, the bgq
|
|
||||||
# variant should not be required if the user specifies the bgq
|
|
||||||
# architecture for the libmonitor package. See #8860
|
|
||||||
# TODO: users want to build this for the backend and dependents for the
|
|
||||||
# frontend. Spack ought to make that easy by finding the appropriate
|
|
||||||
# compiler for each if the root and libmonitor are designated to build
|
|
||||||
# on the frontend and backend, respectively. As of now though, there
|
|
||||||
# is an issue with compiler concretization such that spack will attempt
|
|
||||||
# to assign the compiler chosen for libmonitor to the root (unless the
|
|
||||||
# user specifies the compiler for each in addition to the arch).
|
|
||||||
# See #8859
|
|
||||||
if '+bgq' in self.spec:
|
|
||||||
args.append('CC=powerpc64-bgq-linux-gcc')
|
|
||||||
|
|
||||||
return args
|
return args
|
||||||
|
@ -177,7 +177,6 @@ class Llvm(CMakePackage, CudaPackage):
|
|||||||
|
|
||||||
# code signing is only necessary on macOS",
|
# code signing is only necessary on macOS",
|
||||||
conflicts('+code_signing', when='platform=linux')
|
conflicts('+code_signing', when='platform=linux')
|
||||||
conflicts('+code_signing', when='platform=bgq')
|
|
||||||
conflicts('+code_signing', when='platform=cray')
|
conflicts('+code_signing', when='platform=cray')
|
||||||
|
|
||||||
conflicts(
|
conflicts(
|
||||||
|
@ -81,11 +81,6 @@ def get_arch_options(self, spec):
|
|||||||
'--without-memacs',
|
'--without-memacs',
|
||||||
'--without-nmodl'])
|
'--without-nmodl'])
|
||||||
|
|
||||||
# need to enable bg-q arch
|
|
||||||
if 'bgq' in self.spec.architecture:
|
|
||||||
options.extend(['--enable-bluegeneQ',
|
|
||||||
'--host=powerpc64'])
|
|
||||||
|
|
||||||
# on os-x disable building carbon 'click' utility
|
# on os-x disable building carbon 'click' utility
|
||||||
if 'darwin' in self.spec.architecture:
|
if 'darwin' in self.spec.architecture:
|
||||||
options.append('macdarwin=no')
|
options.append('macdarwin=no')
|
||||||
@ -119,9 +114,6 @@ def get_python_options(self, spec):
|
|||||||
def get_compiler_options(self, spec):
|
def get_compiler_options(self, spec):
|
||||||
flags = '-O2 -g'
|
flags = '-O2 -g'
|
||||||
|
|
||||||
if 'bgq' in self.spec.architecture:
|
|
||||||
flags = '-O3 -qtune=qp -qarch=qp -q64 -qstrict -qnohot -g'
|
|
||||||
|
|
||||||
if self.spec.satisfies('%pgi'):
|
if self.spec.satisfies('%pgi'):
|
||||||
flags += ' ' + self.compiler.cc_pic_flag
|
flags += ' ' + self.compiler.cc_pic_flag
|
||||||
|
|
||||||
@ -134,11 +126,6 @@ def build_nmodl(self, spec, prefix):
|
|||||||
'--with-nmodl-only',
|
'--with-nmodl-only',
|
||||||
'--without-x']
|
'--without-x']
|
||||||
|
|
||||||
if 'bgq' in self.spec.architecture:
|
|
||||||
flags = '-qarch=ppc64'
|
|
||||||
options.extend(['CFLAGS=%s' % flags,
|
|
||||||
'CXXFLAGS=%s' % flags])
|
|
||||||
|
|
||||||
if 'cray' in self.spec.architecture:
|
if 'cray' in self.spec.architecture:
|
||||||
flags = '-target-cpu=x86_64 -target-network=none'
|
flags = '-target-cpu=x86_64 -target-network=none'
|
||||||
options.extend(['CFLAGS=%s' % flags,
|
options.extend(['CFLAGS=%s' % flags,
|
||||||
|
@ -138,7 +138,6 @@ class PyMatplotlib(PythonPackage):
|
|||||||
|
|
||||||
msg = 'MacOSX backend requires the Cocoa headers included with XCode'
|
msg = 'MacOSX backend requires the Cocoa headers included with XCode'
|
||||||
conflicts('platform=linux', when='backend=macosx', msg=msg)
|
conflicts('platform=linux', when='backend=macosx', msg=msg)
|
||||||
conflicts('platform=bgq', when='backend=macosx', msg=msg)
|
|
||||||
conflicts('platform=cray', when='backend=macosx', msg=msg)
|
conflicts('platform=cray', when='backend=macosx', msg=msg)
|
||||||
|
|
||||||
# Patch to pick up correct freetype headers
|
# Patch to pick up correct freetype headers
|
||||||
|
@ -203,7 +203,6 @@ class PyTensorflow(Package, CudaPackage):
|
|||||||
conflicts('+jemalloc', when='@:0')
|
conflicts('+jemalloc', when='@:0')
|
||||||
conflicts('+jemalloc', when='platform=darwin', msg='Currently jemalloc is only support on Linux platform')
|
conflicts('+jemalloc', when='platform=darwin', msg='Currently jemalloc is only support on Linux platform')
|
||||||
conflicts('+jemalloc', when='platform=cray', msg='Currently jemalloc is only support on Linux platform')
|
conflicts('+jemalloc', when='platform=cray', msg='Currently jemalloc is only support on Linux platform')
|
||||||
conflicts('+jemalloc', when='platform=bgq', msg='Currently jemalloc is only support on Linux platform')
|
|
||||||
conflicts('+gcp', when='@:0.8')
|
conflicts('+gcp', when='@:0.8')
|
||||||
conflicts('+hdfs', when='@:0.10')
|
conflicts('+hdfs', when='@:0.10')
|
||||||
conflicts('+aws', when='@:1.3')
|
conflicts('+aws', when='@:1.3')
|
||||||
@ -227,18 +226,15 @@ class PyTensorflow(Package, CudaPackage):
|
|||||||
conflicts('+tensorrt', when='~cuda')
|
conflicts('+tensorrt', when='~cuda')
|
||||||
conflicts('+tensorrt', when='platform=darwin', msg='Currently TensorRT is only supported on Linux platform')
|
conflicts('+tensorrt', when='platform=darwin', msg='Currently TensorRT is only supported on Linux platform')
|
||||||
conflicts('+tensorrt', when='platform=cray', msg='Currently TensorRT is only supported on Linux platform')
|
conflicts('+tensorrt', when='platform=cray', msg='Currently TensorRT is only supported on Linux platform')
|
||||||
conflicts('+tensorrt', when='platform=bgq', msg='Currently TensorRT is only supported on Linux platform')
|
|
||||||
conflicts('+nccl', when='@:1.7')
|
conflicts('+nccl', when='@:1.7')
|
||||||
conflicts('+nccl', when='~cuda')
|
conflicts('+nccl', when='~cuda')
|
||||||
conflicts('+nccl', when='platform=darwin', msg='Currently NCCL is only supported on Linux platform')
|
conflicts('+nccl', when='platform=darwin', msg='Currently NCCL is only supported on Linux platform')
|
||||||
conflicts('+nccl', when='platform=cray', msg='Currently NCCL is only supported on Linux platform')
|
conflicts('+nccl', when='platform=cray', msg='Currently NCCL is only supported on Linux platform')
|
||||||
conflicts('+nccl', when='platform=bgq', msg='Currently NCCL is only supported on Linux platform')
|
|
||||||
conflicts('+mpi', when='@:1.2')
|
conflicts('+mpi', when='@:1.2')
|
||||||
conflicts('+android', when='@:1.4')
|
conflicts('+android', when='@:1.4')
|
||||||
conflicts('+ios', when='@:1.12.0,1.12.2:1.13')
|
conflicts('+ios', when='@:1.12.0,1.12.2:1.13')
|
||||||
conflicts('+ios', when='platform=linux', msg='iOS support only available on macOS')
|
conflicts('+ios', when='platform=linux', msg='iOS support only available on macOS')
|
||||||
conflicts('+ios', when='platform=cray', msg='iOS support only available on macOS')
|
conflicts('+ios', when='platform=cray', msg='iOS support only available on macOS')
|
||||||
conflicts('+ios', when='platform=bgq', msg='iOS support only available on macOS')
|
|
||||||
conflicts('+monolithic', when='@:1.3')
|
conflicts('+monolithic', when='@:1.3')
|
||||||
conflicts('+numa', when='@:1.12.0,1.12.2:1.13')
|
conflicts('+numa', when='@:1.12.0,1.12.2:1.13')
|
||||||
conflicts('+dynamic_kernels', when='@:1.12.0,1.12.2:1.12.3')
|
conflicts('+dynamic_kernels', when='@:1.12.0,1.12.2:1.12.3')
|
||||||
|
@ -20,14 +20,6 @@ class ScorecCore(CMakePackage):
|
|||||||
depends_on('zoltan')
|
depends_on('zoltan')
|
||||||
depends_on('cmake@3.0:', type='build')
|
depends_on('cmake@3.0:', type='build')
|
||||||
|
|
||||||
@property
|
|
||||||
def std_cmake_args(self):
|
|
||||||
# Default cmake RPATH options causes build failure on bg-q
|
|
||||||
if self.spec.satisfies('platform=bgq'):
|
|
||||||
return ['-DCMAKE_INSTALL_PREFIX:PATH={0}'.format(self.prefix)]
|
|
||||||
else:
|
|
||||||
return self._std_args(self)
|
|
||||||
|
|
||||||
def cmake_args(self):
|
def cmake_args(self):
|
||||||
options = []
|
options = []
|
||||||
options.append('-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc)
|
options.append('-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc)
|
||||||
|
@ -170,8 +170,6 @@ def configure(self):
|
|||||||
if self.spec.satisfies('platform=darwin'):
|
if self.spec.satisfies('platform=darwin'):
|
||||||
cflags.append('-DCOMMON_PTHREAD_BARRIER')
|
cflags.append('-DCOMMON_PTHREAD_BARRIER')
|
||||||
ldflags.append('-lm -pthread')
|
ldflags.append('-lm -pthread')
|
||||||
elif self.spec.satisfies('platform=bgq'):
|
|
||||||
ldflags.append('-lm -lrt -lpthread')
|
|
||||||
else:
|
else:
|
||||||
ldflags.append('-lm -lrt -pthread')
|
ldflags.append('-lm -lrt -pthread')
|
||||||
|
|
||||||
|
@ -80,8 +80,6 @@ class Scr(CMakePackage):
|
|||||||
variant('cntl_base', default='/tmp',
|
variant('cntl_base', default='/tmp',
|
||||||
description='Compile time default location for control directory.')
|
description='Compile time default location for control directory.')
|
||||||
|
|
||||||
conflicts('platform=bgq')
|
|
||||||
|
|
||||||
def get_abs_path_rel_prefix(self, path):
|
def get_abs_path_rel_prefix(self, path):
|
||||||
# Return path if absolute, otherwise prepend prefix
|
# Return path if absolute, otherwise prepend prefix
|
||||||
if os.path.isabs(path):
|
if os.path.isabs(path):
|
||||||
|
@ -76,7 +76,6 @@ class Tau(Package):
|
|||||||
# This is a _reasonable_ subset of the full set of TAU
|
# This is a _reasonable_ subset of the full set of TAU
|
||||||
# architectures supported:
|
# architectures supported:
|
||||||
variant('craycnl', default=False, description='Build for Cray compute nodes')
|
variant('craycnl', default=False, description='Build for Cray compute nodes')
|
||||||
variant('bgq', default=False, description='Build for IBM BlueGene/Q compute nodes')
|
|
||||||
variant('ppc64le', default=False, description='Build for IBM Power LE nodes')
|
variant('ppc64le', default=False, description='Build for IBM Power LE nodes')
|
||||||
variant('x86_64', default=False, description='Force build for x86 Linux instead of auto-detect')
|
variant('x86_64', default=False, description='Force build for x86 Linux instead of auto-detect')
|
||||||
|
|
||||||
@ -162,9 +161,6 @@ def install(self, spec, prefix):
|
|||||||
if '+craycnl' in spec:
|
if '+craycnl' in spec:
|
||||||
options.append('-arch=craycnl')
|
options.append('-arch=craycnl')
|
||||||
|
|
||||||
if '+bgq' in spec:
|
|
||||||
options.append('-arch=bgq')
|
|
||||||
|
|
||||||
if '+ppc64le' in spec:
|
if '+ppc64le' in spec:
|
||||||
options.append('-arch=ibm64linux')
|
options.append('-arch=ibm64linux')
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user