Update legion gasnet config (#12523)
This commit is contained in:
parent
25dbc9fb8e
commit
96ba5a1265
@ -48,15 +48,8 @@ def url_for_version(self, version):
|
|||||||
def configure_args(self):
|
def configure_args(self):
|
||||||
args = [
|
args = [
|
||||||
# TODO: factor IB suport out into architecture description.
|
# TODO: factor IB suport out into architecture description.
|
||||||
"--enable-ibv" if '+ibv' in self.spec else '--disable-ibv',
|
|
||||||
"--enable-par",
|
"--enable-par",
|
||||||
"--enable-smp",
|
"--enable-mpi-compat",
|
||||||
"--enable-udp",
|
|
||||||
"--enable-smp-safe",
|
|
||||||
"--enable-segment-fast",
|
|
||||||
"--enable-pshm" if '+pshm' in self.spec else "--disable-pshm",
|
|
||||||
"--with-segment-mmap-max={0}".format(
|
|
||||||
self.spec.variants['segment-mmap-max'].value),
|
|
||||||
# for consumers with shared libs
|
# for consumers with shared libs
|
||||||
"CC=%s %s" % (spack_cc, self.compiler.pic_flag),
|
"CC=%s %s" % (spack_cc, self.compiler.pic_flag),
|
||||||
"CXX=%s %s" % (spack_cxx, self.compiler.pic_flag),
|
"CXX=%s %s" % (spack_cxx, self.compiler.pic_flag),
|
||||||
@ -68,8 +61,16 @@ def configure_args(self):
|
|||||||
args.append('--disable-aligned-segments')
|
args.append('--disable-aligned-segments')
|
||||||
|
|
||||||
if '+mpi' in self.spec:
|
if '+mpi' in self.spec:
|
||||||
args.extend(['--enable-mpi', '--enable-mpi-compat', "MPI_CC=%s %s"
|
args.extend(['--enable-mpi',
|
||||||
|
'--disable-udp',
|
||||||
|
'--disable-ibv',
|
||||||
|
'MPI_CC=%s %s'
|
||||||
% (self.spec['mpi'].mpicc, self.compiler.pic_flag)])
|
% (self.spec['mpi'].mpicc, self.compiler.pic_flag)])
|
||||||
else:
|
|
||||||
args.extend(['--disable-mpi', '--disable-mpi-compat'])
|
if '+ibv' in self.spec:
|
||||||
|
args.extend(['--enable-ibv', '--disable-udp', '--disable-mpi'])
|
||||||
|
|
||||||
|
if '+udp' in self.spec:
|
||||||
|
args.extend(['--enable-udp', '--disable-ibv', '--disable-mpi'])
|
||||||
|
|
||||||
return args
|
return args
|
||||||
|
@ -26,7 +26,7 @@ class Legion(CMakePackage):
|
|||||||
git = "https://github.com/StanfordLegion/legion.git"
|
git = "https://github.com/StanfordLegion/legion.git"
|
||||||
|
|
||||||
version('develop', branch='master')
|
version('develop', branch='master')
|
||||||
version('ctrl-rep', branch='control_replication')
|
version('ctrl-rep', commit='177584e77036c9913d8a62e33b55fa784748759c')
|
||||||
version('19.06.0', sha256='31cd97e9264c510ab83b1f9e8e1e6bf72021a0c6ee4a028966fce08736e39fbf')
|
version('19.06.0', sha256='31cd97e9264c510ab83b1f9e8e1e6bf72021a0c6ee4a028966fce08736e39fbf')
|
||||||
version('19.04.0', sha256='279bbc8dcdab4c75be570318989a9fc9821178143e9db9c3f62e58bf9070b5ac')
|
version('19.04.0', sha256='279bbc8dcdab4c75be570318989a9fc9821178143e9db9c3f62e58bf9070b5ac')
|
||||||
version('18.12.0', sha256='71f2c409722975c0ad92f2caffcc9eaa9260f7035e2b55b731d819eb6a94016c')
|
version('18.12.0', sha256='71f2c409722975c0ad92f2caffcc9eaa9260f7035e2b55b731d819eb6a94016c')
|
||||||
@ -39,24 +39,43 @@ class Legion(CMakePackage):
|
|||||||
|
|
||||||
variant('mpi', default=True,
|
variant('mpi', default=True,
|
||||||
description='Build on top of mpi conduit for mpi inoperability')
|
description='Build on top of mpi conduit for mpi inoperability')
|
||||||
|
variant('ibv', default=False,
|
||||||
|
description='Build on top of ibv conduit for InfiniBand support')
|
||||||
variant('shared', default=True, description='Build shared libraries')
|
variant('shared', default=True, description='Build shared libraries')
|
||||||
variant('hdf5', default=True, description='Enable HDF5 support')
|
variant('hdf5', default=True, description='Enable HDF5 support')
|
||||||
|
variant('build_type', default='Release', values=('Debug', 'Release'),
|
||||||
|
description='The build type to build')
|
||||||
|
|
||||||
depends_on("cmake@3.1:", type='build')
|
depends_on("cmake@3.1:", type='build')
|
||||||
depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB'", when='~mpi')
|
depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB'", when='~mpi')
|
||||||
depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +mpi", when='+mpi')
|
depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +mpi", when='+mpi')
|
||||||
|
depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +ibv", when='+ibv')
|
||||||
depends_on("hdf5~mpi", when='+hdf5')
|
depends_on("hdf5~mpi", when='+hdf5')
|
||||||
|
|
||||||
def cmake_args(self):
|
def cmake_args(self):
|
||||||
|
cmake_cxx_flags = [
|
||||||
|
'-DPRIVILEGE_CHECKS',
|
||||||
|
'-DBOUNDS_CHECKS',
|
||||||
|
'-DENABLE_LEGION_TLS']
|
||||||
|
|
||||||
options = [
|
options = [
|
||||||
'-DLegion_USE_GASNet=ON',
|
'-DLegion_USE_GASNet=ON',
|
||||||
|
'-DLEGION_USE_CUDA=OFF',
|
||||||
|
'-DLEGION_USE_OPENMP=OFF',
|
||||||
'-DLegion_BUILD_EXAMPLES=ON',
|
'-DLegion_BUILD_EXAMPLES=ON',
|
||||||
'-DBUILD_SHARED_LIBS=%s' % ('+shared' in self.spec)]
|
'-DBUILD_SHARED_LIBS=%s' % ('+shared' in self.spec)]
|
||||||
|
|
||||||
|
if self.spec.variants['build_type'].value == 'Debug':
|
||||||
|
cmake_cxx_flags.append('-DDEBUG_REALM', '-DDEBUG_LEGION', '-ggdb')
|
||||||
|
|
||||||
|
options.append('-DCMAKE_CXX_FLAGS=%s' % (" ".join(cmake_cxx_flags)))
|
||||||
|
|
||||||
if '+mpi' in self.spec:
|
if '+mpi' in self.spec:
|
||||||
options.append('-DGASNet_CONDUIT=mpi')
|
options.append('-DGASNet_CONDUIT=mpi')
|
||||||
|
|
||||||
if '+hdf5' in self.spec:
|
if '+hdf5' in self.spec:
|
||||||
options.append('-DLegion_USE_HDF5=ON')
|
options.append('-DLegion_USE_HDF5=ON')
|
||||||
|
else:
|
||||||
|
options.append('-DLegion_USE_HDF5=OFF')
|
||||||
|
|
||||||
return options
|
return options
|
||||||
|
Loading…
Reference in New Issue
Block a user