1
1
Граф коммитов

1177 Коммитов

Автор SHA1 Сообщение Дата
Brian Barrett
9ffac85650 build: Move libevent to a 3rd-party package
With Open MPI 5.0, the decision was made to stop building
3rd-party packages, such as Libevent, HWLOC, PMIx, and PRRTE as
MCA components and instead 1) start relying on external libraries
whenever possible and 2) Open MPI builds the 3rd party
libraries (if needed) as independent libraries, rather than
linked into libopen-pal.

This patch moves libevent from an MCA framework to a stand-alone
library built outside of OPAL.  A wrapper in opal/util is provided
to minimize the unnecessary changes in the rest of the code.  When
using the internal Libevent, it will be installed as a stand-alone
libevent.a, instead of bundled in OPAL.  Any pre-installed version
of Libevent at or after 2.0.21 is preferred over the internal
version.

Signed-off-by: Brian Barrett <bbarrett@amazon.com>
2020-10-01 16:55:58 +00:00
Jeff Squyres
62d1f89622
Merge pull request #7917 from jmciver/fix/rpmbuild-rpm-build-parameter
Fix buildrpm.sh "-r" option used for RPM options specification
2020-07-09 20:58:07 -04:00
John McIver
da701042b5 Fix buildrpm.sh "-r" option used for RPM options specification
The "-r" option now concatenates using the rpmbuild_options
variable. The "-r" option in prior versions of buildrpm.sh
concatenated using the configure_options variable, which uses special
delineation for Autoconf options (first word of argument string is
"configure_options"). This resulted in an RPM build failure as the
Autoconf options would contain nested RPM option statements.

Signed-off-by: John K. McIver III <john.mciver.iii@gmail.com>
2020-07-07 22:31:51 -06:00
Jeff Squyres
86f4128e12 Trivial helper script to git clean submodules
Since we added the use of git submodules recently, this trivial script
has been helpful to me to "git clean" not only the top-level Open MPI
repo, but also all the included submodules, too.

NOTE: this script does the (harsh) "git clean -dfx" command, which
deletes everything that git does not know about.  Use with care!

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2020-07-06 04:57:42 -07:00
Austen Lauria
3ed466e629
Merge pull request #7800 from abouteiller/mpi-next/errors_abort
MPI4: Add ERRORS_ABORT infrastructure
2020-06-29 15:45:29 -04:00
Jie Zhang
9f385a0c9f openmpi.spec: Fix Open MPI packaging issue
Libtool archive files (.la files) create an unnecessary dependency
between linked applications and the development versions of packages
upon which Open MPI depends (to get the .so.1 -> .so symlink).

Remove .la libtool archive files to keep the best practice in
package builders.

Signed-off-by: Jie Zhang <zhngaj@amazon.com>
2020-06-12 02:30:46 +00:00
Aurélien Bouteiller
9c22ad84af
Add the MPI_ERRORS_ABORT predefined error handler (conformance with
mpi-next)

Signed-off-by: Aurélien Bouteiller <bouteill@icl.utk.edu>

Ordering must match fortran definition index for errhandlers, and we
don't want to change the old ones.

Signed-off-by: Aurélien Bouteiller <bouteill@icl.utk.edu>
2020-06-10 12:01:24 -04:00
Ralph Castain
6d29bbfde8
Cleanup heterogeneous builds
Consolidate the ompi_process_info and opal_process_info structs to
remove duplicate storage and conversion issues. Unwind some interweaving
of include files using opal.h. Silence a couple of warnings.

For now, set the arch to local if PMIX_ARCH is not found.

Signed-off-by: Ralph Castain <rhc@pmix.org>
2020-04-22 12:46:27 -07:00
Jeff Squyres
9687d5e867 Upgrade all www.open-mpi.org URLs to https
Found a handful of other URLs that weren't https-ized, so I updated
them, too (after verifying that they support https, of course).

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2020-04-02 10:43:50 -04:00
Ralph Castain
76b9c15825
Remove lingering ORTE references
Wrapper compiler is trying to link in a libopen-rte. Man pages are
setting an ORTE release date.

Signed-off-by: Ralph Castain <rhc@pmix.org>
2020-02-22 07:59:19 -08:00
Gilles Gouaillardet
174e967dbc
Remove ORTE project
Will be replaced by PRRTE. Ensure that OMPI and OPAL layers build
without reference to ORTE. Setup opal/pmix framework to be static.
Remove support for all PMI-1 and PMI-2 libraries. Add support for
"external" pmix component as well as internal v4 one.

remove orte: misc fixes

 - UCX fixes
 - VPATH issue
 - oshmem fixes
 - remove useless definition
 - Add PRRTE submodule
 - Get autogen.pl to traverse PRRTE submodule
 - Remove stale orcm reference
 - Configure embedded PRRTE
 - Correctly pass the prefix to PRRTE
 - Correctly set the OMPI_WANT_PRRTE am_conditional
 - Move prrte configuration to the end of OMPI's configure.ac
 - Make mpirun a symlink to prun, when available
 - Fix makedist with --no-orte/--no-prrte option
 - Add a `--no-prrte` option which is the same as the legacy
   `--no-orte` option.
 - Remove embedded PMIx tarball. Replace it with new submodule
   pointing to OpenPMIx master repo's master branch
 - Some cleanup in PRRTE integration and add config summary entry
 - Correctly set the hostname
 - Fix locality
 - Fix singleton operations
 - Fix support for "tune" and "am" options

Signed-off-by: Ralph Castain <rhc@pmix.org>
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
2020-02-07 18:20:06 -08:00
Jeff Squyres
352e575e18 openmpi.spec: update modulefile_path behavior
Allow the user to override the modulefile_path (root directory to
install the Open MPI modulefile), even if install_in_opt==1.  For
example:

rpmbuild \
    --rebuild \
    --define 'install_in_opt 1' \
    --define 'modulefile_path /path/to/my/modulefiles/openmpi/%{version}' \
    openmpi-4.0.2-1.src.rpm

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2019-12-30 06:53:56 -08:00
Mikhail Brinskii
f2cbd4806e COLL/TUNED: Add linear scatter using isend for mlnx platform
Signed-off-by: Mikhail Brinskii <mikhailb@mellanox.com>
2019-11-07 11:04:39 +02:00
Andrey Maslennikov
63ba7bec46 platform/mellanox: disable missing libcuda warning
Signed-off-by: Andrey Maslennikov <andreyma@mellanox.com>
2019-09-22 16:02:57 +03:00
William Zhang
4ebb37a26c opal/util: Change opal/util/if.h macro IF_NAMESIZE to OPAL_IF_NAMESIZE
Due to IF_NAMESIZE being a reused and conditionally defined macro,
issues could arise from macro mismatches. In particular, in cases where
opal/util/if.h is included, but net/if.h is not, IF_NAMESIZE will be 32.
If net/if.h is included on Linux systems, IF_NAMESIZE will be 16. This
can cause a mismatch when using the same macro on a system. Thus
different parts of the code can have differring ideas on the size of a
structure containing a char name[IF_NAMESIZE]. To avoid this error case,
we avoid reusing the IF_NAMESIZE macro and instead define our own as
OPAL_IF_NAMESIZE.

Signed-off-by: William Zhang <wilzhang@amazon.com>
2019-07-29 21:24:39 +00:00
Mikhail Brinskii
404c480068 COLL/TUNED: Update alltoall selection rule for mlx
Use linear with sync alltoall algorithm for certain message/comm size
ranges. Does not affect default fixed decision, unless HPCX (with its
custom parameters) is used or corresponding mca is set.

Signed-off-by: Mikhail Brinskii <mikhailb@mellanox.com>
2019-07-13 23:27:40 +03:00
Jeff Squyres
013f5b03f5 openmpi.spec: make sure grep failure doesn't abort
Thanks to Daniel Letai for bringing this to our attention.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2019-05-14 16:28:53 -07:00
Michael Heinz
8562211623 Corrects some whitespace issues with buildrpm.sh
Signed-off-by: Michael Heinz <michael.william.heinz@intel.com>
2019-05-01 15:22:03 -04:00
Michael Heinz
687a5603a1 buildrpm.sh no longer respects the value of rpmtopdir
In OMPI 2.1.2, buildrpm.sh could work with a value of rpmtopdir that was
set in the environment. In newer versions this is no longer true,
causing such values to be ignored. This patch adds a new argument to
buildrpm.sh, -R, which allows the user to specify where to build the
RPMs.

Signed-off-by: Michael Heinz <michael.william.heinz@intel.com>
2019-05-01 15:20:41 -04:00
Michael Heinz
0a8fa5439c make-authors.pl script not compatible with being a submodule.
make-authors.pl checks that .git exists and is a directory before
getting the git log - but when a repo is checked out as a submodule of a
larger repository, .git is not a directory, it's just a text file.  This
can cause make-authors.pl to terminate inappropriately.

Author: Michael Heinz <michael.william.heinz@intel.com>
Signed-off-by: Michael Heinz <michael.william.heinz@intel.com>
2019-04-26 11:30:50 -04:00
Jeff Squyres
99553eb1b9 platform: Remove "with_verbs" from all the platform files.
Since --with-verbs has been removed, then remove it from all the
platform files, too.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2019-02-07 05:36:06 -08:00
Jeff Squyres
16de1a990e contrib/platform: remove stale redstorm file
Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2019-01-10 13:45:06 -08:00
Jeff Squyres
f86da9beee platform/contrib: remove stale "iu" directory
IU is no longer active in the Open MPI project.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2019-01-10 13:45:06 -08:00
Andrey Maslennikov
074e9cc92c platform/mellanox: disable btl-uct by default
Signed-off-by: Andrey Maslennikov <andreyma@mellanox.com>
2018-10-22 12:23:40 +03:00
Brian Barrett
e9e4d2a4bc Handle asprintf errors with opal_asprintf wrapper
The Open MPI code base assumed that asprintf always behaved like
the FreeBSD variant, where ptr is set to NULL on error.  However,
the C standard (and Linux) only guarantee that the return code will
be -1 on error and leave ptr undefined.  Rather than fix all the
usage in the code, we use opal_asprintf() wrapper instead, which
guarantees the BSD-like behavior of ptr always being set to NULL.
In addition to being correct, this will fix many, many warnings
in the Open MPI code base.

Signed-off-by: Brian Barrett <bbarrett@amazon.com>
2018-10-08 16:43:53 -07:00
Yossi Itigin
6c9a95df3e
Merge pull request #5858 from amaslenn/mlnx-no-verbs
platform/mellanox: disable openib/verbs
2018-10-08 14:08:09 +03:00
Andrey Maslennikov
7180ab144a platform/mellanox: disable openib/verbs
Signed-off-by: Andrey Maslennikov <andreyma@mellanox.com>
2018-10-08 12:13:44 +03:00
Ralph Castain
952090854a Add intel/bend platform file
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-10-06 20:26:26 -07:00
Ralph Castain
1624f8090b Update intel/bend platform files
[skip ci]
bot:notest

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-10-05 15:06:20 -07:00
Yossi Itigin
a31dc5ddcb
Merge pull request #5725 from amaslenn/platform-mellanox
platform/mellanox: cleanup autodetect config
2018-09-20 18:48:43 +03:00
Yossi Itigin
b18af26f4b
Merge pull request #5726 from amaslenn/platform-mellanox-conf
platform/mellanox: update default configuration
2018-09-20 18:48:18 +03:00
Howard Pritchard
b9ac3d8931 SCIF: remove it
KNC is effectively dead.  Remove corresponding SCIF
support in Open MPI.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2018-09-19 10:39:52 -06:00
Andrey Maslennikov
da18a2d24c platform/mellanox: update default configuration
Signed-off-by: Andrey Maslennikov <andreyma@mellanox.com>
2018-09-18 09:51:47 +03:00
Andrey Maslennikov
ced50a98ff platform/mellanox: cleanup autodetect config
Signed-off-by: Andrey Maslennikov <andreyma@mellanox.com>
2018-09-18 09:47:51 +03:00
Andrey Maslennikov
c7d51a3a83 rpmbuild: fix rpmtopdir redefinition
Erasing this variable by default makes outside definition useless.

Signed-off-by: Andrey Maslennikov <andreyma@mellanox.com>
2018-09-18 09:38:01 +03:00
Jeff Squyres
d246fb7897 Update Automake minimum version to 1.13.4
The embedded PMIx Automake minimum version is already 1.13.4, so to
autogen.pl Open MPI successfully, you already have to have Autoamek
1.13.4.  So we might as well make it official (i.e., bump Open MPI's
Automake minimum to match the Automake minimum in the embedded PMIx).

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-09-15 13:29:30 -07:00
Ralph Castain
98b4ed9a3a Fix the no-disconnect test
A race condition exists based on whether or not the userdata object attached to a hwloc_obj_t has been initialized. These objects are setup whenever we scan for resources under that location. You therefore must not set a variable to the pointer to the userdata object and then call a function that will initialize the data in it - you need to set the variable after the function call, and protect against a NULL pointer

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-06-19 13:52:34 -07:00
Ralph Castain
081a0d98eb Ignore the ud/oob component
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-06-18 13:25:16 -07:00
Ralph Castain
014bb3c8de Fix external hwloc builds
Remove spurious comma in header file definition. Remove unused variables

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-06-03 11:24:21 -07:00
Nathan Hjelm
85d1965a0f
Merge pull request #4828 from hppritcha/topic/update_lanl_toss_platform
lanl/platform: add new toss2/3 platform files
2018-05-01 09:52:14 -06:00
Brian Barrett
fe2b6cf1d6 dist: Don't build case-conflicting html man pages
The html man page builder creates a web page for every
man page generated by our releases.  We then check all
those pages into the ompi-www repo.  Force the build
to skip case-conflicting pages (ie, mpiCC because it
conflicts with mpicc), even if building on Linux, so that
ompi-www continues to be sane when cloned onto MacOS.

Signed-off-by: Brian Barrett <bbarrett@amazon.com>
2018-03-29 21:44:58 +00:00
Ralph Castain
538fd18fad Update default MCA params in platform file
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-03-25 17:14:01 -07:00
Aurélien Bouteiller
9e23d24bb4
Scaling.pl: Fix Srun options and wait for DVM launch
Flush out the DVM ready notice on stdout

Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>
2018-03-15 00:00:49 -04:00
Howard Pritchard
8eb738a9c8 lanl/platform: add new toss2/3 platform files
remove old platform files
add new platform files for toss2/toss3
OPA/MLX-IB variants.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
2018-02-17 10:32:07 -07:00
Ralph Castain
4381b2c60f Add ability to multiply number of nodes when running scaling tests
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-11-12 16:38:37 -08:00
Ralph Castain
e7c6718d29 Add timeout option to scaling script
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-10-24 12:33:22 -07:00
Ralph Castain
3b71be4db4 Update the scaling script to avoid use of "system" command, thus ensuring that each command sees the same environment. Fix prun to pickup and propagate OMPI MCA params
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-10-23 16:27:41 -07:00
Ralph Castain
6ffb0d0507 Ensure that the pmix server system-level rendezvous file is only output by the HNP as (at least for slurm on cray) a daemon could be colocated with the HNP and overwrite the file. Update the scaling.pl script to only use the system-level rendezvous so it doesn't get rejected by a colocated daemon
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-10-14 10:16:49 -07:00
Ralph Castain
31bce4ba9c Update the scaling.pl script
* check that the command succeeds when pre-positioning the file to ensure there isn't an error somewhere in the execution

* properly define srun cmd line options

* terminate the orte-dvm only when it is actually in operation so prun doesn't generate spurious error messages

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2017-10-13 18:23:18 -07:00
Howard Pritchard
406c4cc126 Merge pull request #4299 from hppritcha/topic/update_lanl_toss_platform_file
LANL/platform: disable use of XRC recv bufs
2017-10-06 09:31:17 -06:00