romio: clean up legacy fallback support - #7936
Open
hzhou wants to merge 9 commits into
Open
Conversation
Let's assume the MPI implementation will always have MPI_Info and remove ROMIO's fallback implementation.
Remove the support for HP MPI. It is only used in ADIOI_Datatype_iscontig, which calls hpmp_dtiscontig.
We don't have testing systems for SGI MPI support any more. The relevant code is simple enough and can be brought back if needed, but we would need committed maintainer to claim the feature in order to keep the code in upstream.
This is for some old style checker that we no longer use.
Let's assume today's MPI all support MPI darray and subarray. We can still bring this code back, but we need committed maintainer who use this code to maintain.
Let's assume today's MPI all support standard MPI generalized request.
Remove MPIO_Test, MPIO_Wait, MPIO_Request_c2f/f2c and related functions (Testall, Waitall, Testany, Waitany, Testsome, Waitsome). These were legacy ROMIO APIs from before MPI had generalized requests. With HAVE_MPI_GREQUEST always defined, MPIO_Request was just an alias for MPI_Request and these functions were trivial wrappers.
MPI_Offset is always provided by MPICH and Open MPI. Remove the fallback typedef, HAVE_MPI_DATAREP_FUNCTIONS guard, MPI_OFFSET_IS_INT, HAVE_LONG_LONG_64, and HAVE_MPI_LONG_LONG_INT detection logic. Simplify ADIO_OFFSET to use MPI_OFFSET directly.
Instead of providing MPI_File_c2f/f2c, provide MPI_File_toint/fromint instead, thus remove its dependency on MPI_Fint, which will be only available with fortran binding.
Collaborator
Author
|
test:mpich/ch3/most |
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
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.
Pull Request Description
ROMIO provides fallback for MPI implementation that does not provide MPI_Info, MPI darray/subarray, or MPI generaized request. Today, we can assume all MPI support these standard MPI API. If there is still need for ROMIO to work with legacy MPI, we can bring these fallback back, but we would need committed maintainer for these code.
Clean these rarely needed fallbacks makes it easier to integrate with MPICH's binding and ABI refactoring.
Author Checklist
Particularly focus on why, not what. Reference background, issues, test failures, xfail entries, etc.
Commits are self-contained and do not do two things at once.
Commit message is of the form:
module: short descriptionCommit message explains what's in the commit.
Whitespace checker. Warnings test. Additional tests via comments.
For non-Argonne authors, check contribution agreement.
If necessary, request an explicit comment from your companies PR approval manager.