-
Notifications
You must be signed in to change notification settings - Fork 868
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
MPI C++ Datatypes: don't declare/define if no C++ support #1389
MPI C++ Datatypes: don't declare/define if no C++ support #1389
Conversation
Test FAILed. |
Hey @bosilca, the jenkins tests failed -- and with good reason. I #if'ed out some datatypes in datatype_module.c, which therefore throws off the ordering of the indexing in the datatype array. What's the Right way to do this -- still define the ompi_cxx_ types, but just remove the MPI_CXX_ #define's from mpi.h.in? Typing that out makes it sound like the Right thing to do -- I'll do that. Let me know what you think. |
Per MPI-3.1 A.1.1 p674, only define the C++ datatypes if we're actually building C++ support. Signed-off-by: Jeff Squyres <[email protected]>
90f2d78
to
05c1108
Compare
Removing the defines from the mpi.h is the correct thing to do from the user perspective. However, if we want the entire system to work correctly we should also make sure that the undefined datatypes points to UNAVAILABLE. That being said, this has many implication that have not been foreseen.
|
@bosilca I can mention these concerns in the presentation I'm making at the Forum next week about the corresponding Fortran datatypes issue. |
:bot:retest: |
I like Jeff's suggestion of keeping it it in the datatype array to maintain the indexes, but NOT define them in mpi.h. |
We present this idea to the Forum tomorrow in plenary sessions (i.e., if Fortran datatypes need to exist in mpi.h if there is no Fortran support); we'll see what they say. |
Straw votes from the March 2016 Chicago MPI Forum meeting are here. The issue is not fully resolved yet: what should |
bump. Looks like not alot of concensus around MPI_*_(C2F|F2C)? |
Please add a Signed-off-by line to this PR's commit. |
Looks like this is not yet resolved in the MPI Forum. Bumped to v3.0.0. |
According to Jeff, the forum still hasn't resolved this issue. Next meeting is Jun 14, which is way too late to hit 3.0.0. I'm going to push this to 3.1.x milestone. Someone should bring it back to v3.0.x if they disagree. |
Looks like there's still a bunch of unresolved questions on this. It doesn't seem that important, and is therefore low priority (as evidenced by this PR being open for over a year with no action). So I'm just going to close this PR without merging. |
Per MPI-3.1 A.1.1 p674, only define the C++ datatypes if we're actually building C++ support.
Signed-off-by: Jeff Squyres [email protected]
This consequence came out of the "should we define Fortran MPI datatypes in mpi.h if there's no Fortran support?" discussion. In the MPI Fortran WG discussion, it turns out that MPI-3.1 does say that the C++ datatypes should not be available in mpi.h if there's no C++ bindings. The spec unfortunately don't say anything about the Fortran datatypes -- so it'll be brought up in the March 2016 MPI Forum meeting.
This commit removes the C++ MPI Datatypes from mpi.h when there's no C++ support.
@bosilca Please review.