forked from open-mpi/ompi
-
Notifications
You must be signed in to change notification settings - Fork 0
Sync upstream main into capstone-devel #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from being echoed into the .openmpi/mca-params.conf file. its confusing people. See https://docs.open-mpi.org/en/v5.0.x/mca.html#mca-parameter-changes-between-open-mpi-4-x-and-5-x Signed-off-by: Howard Pritchard <howardp@lanl.gov>
Fix a couple of problems uncovered in issue open-mpi#12854. Turns out the MCA param management system was "remembering" things even if a variable was deregistered when a framework was closed. Also the test case showed that destructing ompi_mpi_session_null needs to be moved to ompi_mpi_instance_release. Related to open-mpi#12854 Signed-off-by: Howard Pritchard <howardp@lanl.gov>
Greatly simplify support for MPI_Comm_create_from_group and MPI_Intercomm_create_from_group by removing the need to support the 128-bit excid notion. Instead, make use of a PMIx capability - PMIX_GROUP_LOCAL_CID and the notion of PMIX_GROUP_INFO. This capability was introduced in Open PMIx 4.1.3. This capability allows us to piggy-back a local cid selected for the new communicator on the PMIx_Group_construct operation. Using this approach, a lot of the complex active message style operations implemented in the OB1 PML to support excids can be avoided. Infrastructure for debugging communicator management routines was also introduced, along with a new MCA parameter - mpi_comm_verbose. Related to open-mpi#12566 Signed-off-by: Howard Pritchard <howardp@lanl.gov>
With sessions initialization model (section 11.3 of MPI 4 standard) MPI may be initialized and finalized any number of times. This patch refactors code that was assuming a one shot init/finalize sequence for initializing Open MPI and its MCA param space The underlying problem with the replaced code was that when an app calls MPI_Session_finalize and there are no more sessions active, the MCA param space is destroyed. So if one does not build Open MPI to use dynamically load components, and a component is using static variables in a way that assumes the MCA param space is always preserved if a static variable is set to some value, then things break if a subsequent MPI_Session_init is invoked. Related to open-mpi#12869 Signed-off-by: Howard Pritchard <hppritcha@gmail.com>
nvfortran needs to be passed -fPIC when building shared libraries, so patch the generated configure script in order to properly handle nvfortran: - add nvfortran to the list of known fortran compilers - pass -fPIC to the compiler Refs. open-mpi#8919 Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp> Signed-off-by: George Bosilca <gbosilca@nvidia.com>
configury: patch configure to support nvfortran
sessions: add support for ucx and more
sessions: fix some problems with multiple init/fini
remove deprecated mca rmaps param
…essions ofi/common: fix code that broke sessions
when there are no more refs to opal util layer. Update sessions smoke test to illustrate the issue in case this change gets reverted or undone by some future commit. Signed-off-by: Howard Pritchard <howardp@lanl.gov>
even when configuring with --enable-mca-dso. The partition framework open/close was not being properly managed prior to this patch, leading to segfaults upon reinitialization if the app starts another session after closing a previous one and the Open MPI was configured with --enable-mca-dso. Related to open-mpi#12887 Signed-off-by: Howard Pritchard <howardp@lanl.gov>
…ke_test sessions: make sure to only finalize class
This is a cleanup of the write_all operation, in preparation for adding read_all implementation to the vulcan component. Specifically: - remove the multiple group option: this was envisioned for the vulcan component, but never fully implemented. Therefore, having a few stubs at some locations (and an mca parameter) doesn't make sense, and are being removed to simplify the code. - remote the write_chunksize option: this was an artifact of the code based having evolved from dynamic_gen2 (where the option makes sense). However, in vulcan it doesn't really make sense and was actually not correctly implemented eitherway, so if somebody would have used that option, it would prbably have failed. The changed have been validated with the ompio testsuite as well as the hdf5 testphdf5, t_shapesame, and t_filters_parallel tests. Signed-off-by: Edgar Gabriel <edgar.gabriel@amd.com>
extract some code into stand alone routines in preparation for adding a vulcan read_all implementation. Specifically, this pr adds new routines for : - mca_fcoll_vulcan_calc_blocklen_disps - mca_fcoll_vulcan_calc_file_offsets - mca_fcoll_vulcan_calc_io_array which will be reused in the read_all as well. Also, some white-space cleanup of the code. Signed-off-by: Edgar Gabriel <edgar.gabriel@amd.com>
add an implementation of the read_all operation that uses the two-phase I/O algorithm using even partitioning, i.e. the same base idea that is used by the write_all operation of this component. In addition to using the 'correct' data partitioning approach for the component, the vulcan read_all implementation also adds some other features that were there for the write_all operations, but not for the (generic) read_all algorithm used by all components so far. Specifically, it can overlap the execution of the I/O phase and the communication phase. The algorithm can also use GPU buffers for aggregation. Signed-off-by: Edgar Gabriel <edgar.gabriel@amd.com>
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
…sessions_test examples: add return 0 to sessions smoke test
…phase-read-all fcoll/vulcan: add two_phase read_all
partitions: make it work with sessions
to match up with PMIx and PRRTe dependencies Signed-off-by: Howard Pritchard <howardp@lanl.gov>
hwloc: move to minimum 2.1.0
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
openpmix: move the sha back to 08e41ed to avoid a bunch of group refactor stuff for now Signed-off-by: Howard Pritchard <howardp@lanl.gov>
…_30cadc6746 prrte: advance sha to 30cadc6746
Teach the dynamic rules file reader to look for the alltoall_algorithm_max_requests tuning parameter. To keep the dynamic rules file format backward compatible the alltoall_algorithm_max_requests is optional. When not present in the rule definition the value of the corresponding MCA variable is used instead. Resolves open-mpi#12589 Signed-off-by: Burlen Loring <bloring@nvidia.com>
the version identifier is optional but when provided it must have the following format and must appear on the first line.`rule-file-version-N` where N is an unsigned integer. Older versions of the parser will fall back to fixed decision mechanism when this line is present. Version 1 is the original format, Version 2 has support for optional coll_tuned_alltoall_algorithm_max_requests specification. Signed-off-by: Burlen Loring <bloring@nvidia.com>
Changes several variables scope from READONLY to ALL so that they can be set via MPI_T interface Signed-off-by: Burlen Loring <bloring@nvidia.com>
Changes several variables scope from READONLY to ALL so that they can be set via MPI_T interface Signed-off-by: Burlen Loring <bloring@nvidia.com>
Changes several variables scope from READONLY to ALL so that they can be set via MPI_T interface Signed-off-by: Burlen Loring <bloring@nvidia.com>
Changes several variables scope from READONLY to ALL so that they can be set via MPI_T interface Signed-off-by: Burlen Loring <bloring@nvidia.com>
Changes several variables scope from READONLY to ALL so that they can be set via MPI_T interface Signed-off-by: Burlen Loring <bloring@nvidia.com>
…ll_max_requests coll tuned dynamic rules file alltoall_algorithm_max_requests
coll MCA variables READONLY scope prevents their use via MPI_T tools interface
The local PMIx server may have info on the local peers for a job - so allow the client to request that info if it doesn't already possess it. Also clean up some diagnostic output so it shows the PMIx attribute name (or just the provided string if it isn't an attribute name) to make it easier to correlate to the code. Signed-off-by: Ralph Castain <rhc@pmix.org>
Allow the dpm to query the server for local peer info
No, wait -- this will bring in the prrte from upstream |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This will allow CI on #2 to pass (i.e., it will fix the pmix compile error).