Skip to content

Commit

Permalink
Update OpenPMIx
Browse files Browse the repository at this point in the history
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
  • Loading branch information
jcsiadal committed Apr 2, 2023
1 parent d510ea7 commit 319e43b
Show file tree
Hide file tree
Showing 5 changed files with 161 additions and 110 deletions.
3 changes: 2 additions & 1 deletion components/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,8 @@ provisioning/warewulf/SOURCES/warewulf-*.tar.gz
rms/magpie/SOURCES/*.tar.gz
rms/munge/SOURCES/munge-*.tar.gz
rms/openpbs/SOURCES/v*.tar.gz
rms/pmix/SOURCES/pmix-*.tar.bz2
rms/openpmix/SOURCES/pmix-*.tar.gz
rms/openpmix/SOURCES/prrte-*.tar.gz
rms/slurm/SOURCES/slurm-*.tar.bz2
runtimes/charliecloud/SOURCES/charliecloud-*.tar.gz
serial-libs/R/SOURCES/R-*.tar.gz
Expand Down
52 changes: 31 additions & 21 deletions components/rms/pmix/LICENSE → components/rms/openpmix/LICENSE
Original file line number Diff line number Diff line change
@@ -1,34 +1,32 @@
The Project Management Interface for Exascale Operations (PMIx) software is distributed under the New BSD license, listed below.

Most files in this release are marked with the copyrights of the
organizations who have edited them. The copyrights below are in no
particular order and generally reflect members of the Open MPI core
team and the PMIx team who have contributed code to this release.
particular order and generally reflect members of the PMIx and
PRRTE core teams who have contributed code to this release.
The copyrights for code used under license from other parties are
included in the corresponding files.

Copyright (c) 2004-2010 The Trustees of Indiana University and Indiana
University Research and Technology
Corporation. All rights reserved.
Copyright (c) 2004-2010 The University of Tennessee and The University
Copyright (c) 2004-2023 The University of Tennessee and The University
of Tennessee Research Foundation. All rights
reserved.
Copyright (c) 2004-2010 High Performance Computing Center Stuttgart,
Copyright (c) 2004-2010 High Performance Computing Center Stuttgart,
University of Stuttgart. All rights reserved.
Copyright (c) 2004-2008 The Regents of the University of California.
All rights reserved.
Copyright (c) 2006-2010 Los Alamos National Security, LLC. All rights
reserved.
Copyright (c) 2006-2010 Cisco Systems, Inc. All rights reserved.
Copyright (c) 2006-2017 Los Alamos National Security, LLC. All rights
reserved.
Copyright (c) 2006-2017 Cisco Systems, Inc. All rights reserved.
Copyright (c) 2006-2010 Voltaire, Inc. All rights reserved.
Copyright (c) 2006-2011 Sandia National Laboratories. All rights reserved.
Copyright (c) 2006-2017 Sandia National Laboratories. All rights reserved.
Copyright (c) 2006-2010 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
Copyright (c) 2006-2010 The University of Houston. All rights reserved.
Copyright (c) 2006-2017 The University of Houston. All rights reserved.
Copyright (c) 2006-2009 Myricom, Inc. All rights reserved.
Copyright (c) 2007-2008 UT-Battelle, LLC. All rights reserved.
Copyright (c) 2007-2010 IBM Corporation. All rights reserved.
Copyright (c) 1998-2005 Forschungszentrum Juelich, Juelich Supercomputing
Copyright (c) 2007-2017 UT-Battelle, LLC. All rights reserved.
Copyright (c) 2007-2017 IBM Corporation. All rights reserved.
Copyright (c) 1998-2005 Forschungszentrum Juelich, Juelich Supercomputing
Centre, Federal Republic of Germany
Copyright (c) 2005-2008 ZIH, TU Dresden, Federal Republic of Germany
Copyright (c) 2007 Evergrid, Inc. All rights reserved.
Expand All @@ -37,16 +35,29 @@ Copyright (c) 2008-2009 Institut National de Recherche en
Informatique. All rights reserved.
Copyright (c) 2007 Lawrence Livermore National Security, LLC.
All rights reserved.
Copyright (c) 2007-2009 Mellanox Technologies. All rights reserved.
Copyright (c) 2007-2017 Mellanox Technologies. All rights reserved.
Copyright (c) 2006-2010 QLogic Corporation. All rights reserved.
Copyright (c) 2008-2010 Oak Ridge National Labs. All rights reserved.
Copyright (c) 2006-2010 Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2009 Bull SAS. All rights reserved.
Copyright (c) 2008-2017 Oak Ridge National Labs. All rights reserved.
Copyright (c) 2006-2012 Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2009-2015 Bull SAS. All rights reserved.
Copyright (c) 2010 ARM ltd. All rights reserved.
Copyright (c) 2010-2011 Alex Brick . All rights reserved.
Copyright (c) 2016 ARM, Inc. All rights reserved.
Copyright (c) 2010-2011 Alex Brick <bricka@ccs.neu.edu>. All rights reserved.
Copyright (c) 2012 The University of Wisconsin-La Crosse. All rights
reserved.
Copyright (c) 2013 Intel, Inc. All rights reserved.
Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
Copyright (c) 2011-2017 NVIDIA Corporation. All rights reserved.
Copyright (c) 2016 Broadcom Limited. All rights reserved.
Copyright (c) 2011-2017 Fujitsu Limited. All rights reserved.
Copyright (c) 2014-2015 Hewlett-Packard Development Company, LP. All
rights reserved.
Copyright (c) 2013-2017 Research Organization for Information Science (RIST).
All rights reserved.
Copyright (c) 2017-2023 Amazon.com, Inc. or its affiliates. All Rights
reserved.
Copyright (c) 2018 DataDirect Networks. All rights reserved.
Copyright (c) 2020-2023 Nanook Consulting. All rights reserved.
Copyright (c) 2022-2023 Triad National Security, LLC. All rights reserved

$COPYRIGHT$

Expand Down Expand Up @@ -88,4 +99,3 @@ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

File renamed without changes.
128 changes: 128 additions & 0 deletions components/rms/openpmix/SPECS/openpmix.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
#----------------------------------------------------------------------------bh-
# This RPM .spec file is part of the OpenHPC project.
#
# It may have been modified from the default version supplied by the underlying
# release package (if available) in order to apply patches, perform customized
# build/install configurations, and supply additional files to support
# desired integration conventions.
#
#----------------------------------------------------------------------------eh-

%include %{_sourcedir}/OHPC_macros
%global pname openpmix
%global sname pmix
%global SNAME PMIX

Summary: An extended/exascale implementation of the PMIx Standard
Name: %{pname}%{PROJ_DELIM}
Version: 5.0.0rc1
Release: 1%{?dist}
License: BSD
URL: https://openpmix.github.io/openpmix/
Group: %{PROJ_NAME}/rms
Source0: https://github.com/openpmix/openpmix/releases/download/v%{version}/%{sname}-%{version}.tar.gz

Obsoletes: pmix-%{PROJ_DELIM}

Conflicts: libev

BuildRequires: libevent-devel
BuildRequires: perl
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: python3-devel
BuildRequires: pandoc > 1.12
BuildRequires: libpsm2-devel
BuildRequires: zlib-devel
BuildRequires: (opa-libopamgt-devel or libopamgt-devel)
BuildRequires: hwloc%{PROJ_DELIM}
BuildRequires: munge-devel
BuildRequires: automake
BuildRequires: autoconf
BuildRequires: slurm%{PROJ_DELIM}
BuildRequires: openpbs-server%{PROJ_DELIM}

#!BuildIgnore: post-build-checks

%global install_path %{OHPC_ADMIN}/%{pname}
%global module_path %{OHPC_MODULES}/%{pname}

%description
The Process Management Interface (PMI) has been used for quite some time as a
means of exchanging wireup information needed for interprocess communication. Two
versions (PMI-1 and PMI-2) have been released as part of the MPICH effort. While
PMI-2 demonstrates better scaling properties than its PMI-1 predecessor, attaining
rapid launch and wireup of the roughly 1M processes executing across 100k nodes
expected for exascale operations remains challenging.

PMI Exascale (PMIx) represents an attempt to resolve these questions by providing
an extended version of the PMI standard specifically designed to support clusters
up to and including exascale sizes. The overall objective of the project is to
eliminate some current restrictions that impact scalability, and provide
a reference implementation of the PMIx-server that demonstrates the desired level of
scalability.

This RPM contains all the tools necessary to compile and link against PMIx.


%prep
%setup -q -n %{sname}-%{version}


%build
module load hwloc

export CFLAGS="%{?cflags:%{cflags}}%{!?cflags:$RPM_OPT_FLAGS}"
export CXXFLAGS="%{?cxxflags:%{cxxflags}}%{!?cxxflags:$RPM_OPT_FLAGS}"
export FCFLAGS="%{?fcflags:%{fcflags}}%{!?fcflags:$RPM_OPT_FLAGS}"
./configure --prefix=%{install_path} \
--libdir=%{install_path}/lib \
--enable-shared \
--disable-static \
--with-psm2 \
--enable-sphinx=no \
--with-opamgt \
--with-munge \
--with-libevent \
--with-hwloc=$HWLOC_DIR #|| { cat config.log && exit 1; }
make %{?_smp_mflags}


%install
export ROOTDIR=$(pwd)

make install DESTDIR=${RPM_BUILD_ROOT}

# OpenPMIx Module File
mkdir -p ${RPM_BUILD_ROOT}%{module_path}
cat <<EOF > ${RPM_BUILD_ROOT}%{module_path}/%{version}.lua
help([[
This module loads the %{pname} library.
]])

whatis("Name: %{pname}")
whatis("Version: %{version}")

local version = "%{version}"

prepend_path("MANPATH", "%{install_path}/share/man")
prepend_path("INCLUDE", "%{install_path}/include")
prepend_path("LD_LIBRARY_PATH", "%{install_path}/lib")

setenv("%{PNAME}_DIR", "%{install_path}")
setenv("%{PNAME}_LIB", "%{install_path}/lib")
setenv("%{PNAME}_INC", "%{install_path}/include")
setenv("%{SNAME}_DIR", "%{install_path}")
setenv("%{SNAME}_LIB", "%{install_path}/lib")
setenv("%{SNAME}_INC", "%{install_path}/include")

family("PMIx")
EOF


%files
%{install_path}
%{module_path}
%doc README.md
%doc VERSION
%license LICENSE
88 changes: 0 additions & 88 deletions components/rms/pmix/SPECS/pmix.spec

This file was deleted.

0 comments on commit 319e43b

Please sign in to comment.