Skip to content
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

Add support for MPI-3.1 MPI_Aint functions #629

Merged
merged 4 commits into from
Jun 24, 2015
Merged

Conversation

hjelmn
Copy link
Member

@hjelmn hjelmn commented Jun 8, 2015

This commit adds support for MPI_Aint_add and MPI_Aint_diff. These
functions are implemented as macros in C (explicitly allowed by
MPI-3.1). The fortran implementations are a similar mess to the
MPI_Wtime implementations.

Signed-off-by: Nathan Hjelm [email protected]

@hjelmn
Copy link
Member Author

hjelmn commented Jun 8, 2015

@jsquyres I have no idea if the fortran bindings are complete/correct. Can you take a look?

@hjelmn
Copy link
Member Author

hjelmn commented Jun 8, 2015

Jeff, can you also take a look at the man pages. Most of the text is directly copied from MPI-3.1.

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/114/

Build Log
last 20 lines

[...truncated 7372 lines...]
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h:203.33:
    Included at mpi-ignore-tkr.F90:44:

  integer(kind=MPI_ADDRESS_KIND :: addr1
                                 1
Error: Missing right parenthesis at (1)
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h:204.33:
    Included at mpi-ignore-tkr.F90:44:

  integer(kind=MPI_ADDRESS_KIND :: addr2
                                 1
Error: Missing right parenthesis at (1)
make[2]: *** [mpi-ignore-tkr.lo] Error 1
make[2]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi/mpi/fortran/use-mpi-ignore-tkr'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi'
make: *** [all-recursive] Error 1
Build step 'Execute shell' marked build as failure
Setting status of dbe0ce555c01a83ff686163e2d551f8e5d6aa23e to FAILURE with url http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/114/ and message: Build finished.

Test FAILed.

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_distcheck/25/
Test PASSed.

@hjelmn
Copy link
Member Author

hjelmn commented Jun 8, 2015

Once these are ready I plan to file a PR for 1.10 since the changes should go in cleanly. No reason not to have these MPI-3.1 functions there.

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/115/

Build Log
last 20 lines

[...truncated 7371 lines...]
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h:203.33:
    Included at mpi-ignore-tkr.F90:44:

  integer(kind=MPI_ADDRESS_KIND :: addr1
                                 1
Error: Missing right parenthesis at (1)
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h:204.33:
    Included at mpi-ignore-tkr.F90:44:

  integer(kind=MPI_ADDRESS_KIND :: addr2
                                 1
Error: Missing right parenthesis at (1)
make[2]: *** [mpi-ignore-tkr.lo] Error 1
make[2]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi/mpi/fortran/use-mpi-ignore-tkr'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi'
make: *** [all-recursive] Error 1
Build step 'Execute shell' marked build as failure
Setting status of 810bf3e532a4b3380d969c2506eb875880c956ab to FAILURE with url http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/115/ and message: Build finished.

Test FAILed.

@mellanox-github
Copy link

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_distcheck/26/
Test PASSed.

@mellanox-github
Copy link

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/116/

Build Log
last 20 lines

[...truncated 7591 lines...]
Error: Expecting 'END INTERFACE pmpi_aint_diff' at (1)
pmpi-f08-interfaces.F90:2511.38:

interface  PMPI_Comm_create_errhandler
                                      1
Error: Unexpected INTERFACE statement in INTERFACE block at (1)
pmpi-f08-interfaces.F90:2520.42:

end interface  PMPI_Comm_create_errhandler
                                          1
Error: Expecting 'END INTERFACE pmpi_aint_diff' at (1)
Fatal Error: Error count reached limit of 25.
make[2]: *** [pmpi-f08-interfaces.lo] Error 1
make[2]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi/mpi/fortran/use-mpi-f08'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi'
make: *** [all-recursive] Error 1
Build step 'Execute shell' marked build as failure
Setting status of 2b67b1410878c989e2b502d3346e84a28453e06a to FAILURE with url http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/116/ and message: Build finished.

Test FAILed.

@mellanox-github
Copy link

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/605/

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_distcheck/27/
Test PASSed.

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/606/

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/117/

Build Log
last 20 lines

[...truncated 7590 lines...]
Error: Expecting 'END INTERFACE pmpi_aint_diff' at (1)
pmpi-f08-interfaces.F90:2511.38:

interface  PMPI_Comm_create_errhandler
                                      1
Error: Unexpected INTERFACE statement in INTERFACE block at (1)
pmpi-f08-interfaces.F90:2520.42:

end interface  PMPI_Comm_create_errhandler
                                          1
Error: Expecting 'END INTERFACE pmpi_aint_diff' at (1)
Fatal Error: Error count reached limit of 25.
make[2]: *** [pmpi-f08-interfaces.lo] Error 1
make[2]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi/mpi/fortran/use-mpi-f08'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi'
make: *** [all-recursive] Error 1
Build step 'Execute shell' marked build as failure
Setting status of c4a310d84179a9e8fd408f25bf34d4b85d9f2760 to FAILURE with url http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/117/ and message: Build finished.

Test FAILed.

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/607/

@hjelmn
Copy link
Member Author

hjelmn commented Jun 8, 2015

More bugs. Will update tomorrow.

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_distcheck/28/
Test PASSed.

@mellanox-github
Copy link

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/118/

Build Log
last 20 lines

[...truncated 7591 lines...]
Error: Expecting 'END INTERFACE pmpi_aint_diff' at (1)
pmpi-f08-interfaces.F90:2511.38:

interface  PMPI_Comm_create_errhandler
                                      1
Error: Unexpected INTERFACE statement in INTERFACE block at (1)
pmpi-f08-interfaces.F90:2520.42:

end interface  PMPI_Comm_create_errhandler
                                          1
Error: Expecting 'END INTERFACE pmpi_aint_diff' at (1)
Fatal Error: Error count reached limit of 25.
make[2]: *** [pmpi-f08-interfaces.lo] Error 1
make[2]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi/mpi/fortran/use-mpi-f08'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/global/u2/h/hpp/jenkins_edison/workspace/ompi_master_pr_cle5.2up02/ompi'
make: *** [all-recursive] Error 1
Build step 'Execute shell' marked build as failure
Setting status of e88969f554880948285203603b7490118ec8049a to FAILURE with url http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/118/ and message: Build finished.

Test FAILed.

@mellanox-github
Copy link

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_distcheck/29/
Test PASSed.

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/608/

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/609/

This commit adds support for MPI_Aint_add and MPI_Aint_diff. These
functions are implemented as macros in C (explicitly allowed by
MPI-3.1). The fortran implementations are a similar mess to the
MPI_Wtime implementations.

Signed-off-by: Nathan Hjelm <[email protected]>
@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_distcheck/31/
Test PASSed.

@lanl-ompi
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
http://jenkins.open-mpi.org/job/ompi_master_pr_cle5.2up02/120/
Test PASSed.

@mellanox-github
Copy link

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/611/

the addresses had called (char *) \fIaddr1\fP - (char *) \fIaddr2\fP
on the addresses initially passed to \fBMPI_Get_address\fP.

.SH FORTRAN 77 NOTES
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this section on F77 notes (and the "See FORTRAN 77 nodes" on line 22).

Ditto for the other man page.

@jsquyres
Copy link
Member

@hjelmn Pull request filed against your repo to fix the F08 bindings (although I didn't fix the man pages).

jsquyres and others added 3 commits June 24, 2015 10:42
(cherry picked from commit 8f252e65b02bfe20cacee0ece8c835246eea3bd9)
mpi-f08: corrections to new MPI_Aint_* subroutines
@jsquyres
Copy link
Member

👍

hjelmn added a commit that referenced this pull request Jun 24, 2015
Add support for MPI-3.1 MPI_Aint functions
@hjelmn hjelmn merged commit 458cd9d into open-mpi:master Jun 24, 2015
@jsquyres jsquyres deleted the aint_math branch June 24, 2015 17:52
@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/653/

Build Log
last 50 lines

GitHub pull request #629 of commit 6dd9658d73c792662a18681eecd87466c45863bf, no merge conflicts.
Setting status of 6dd9658d73c792662a18681eecd87466c45863bf to PENDING with url http://bgate.mellanox.com:8888/jenkins/job/gh-ompi-master-pr/653/ and message: 'Build started, sha1 is merged'
Using conext: Mellanox
[EnvInject] - Loading node environment variables.
Building on master in workspace /var/lib/jenkins/jobs/gh-ompi-master-pr/workspace-2
Wiping out workspace first.
Cloning the remote Git repository
Cloning repository https://github.com/open-mpi/ompi
 > /usr/bin/git init /var/lib/jenkins/jobs/gh-ompi-master-pr/workspace-2 # timeout=60
Fetching upstream changes from https://github.com/open-mpi/ompi
 > /usr/bin/git --version # timeout=60
using .gitcredentials to set credentials
 > /usr/bin/git config --local credential.helper store --file=/tmp/git5556004118502115884.credentials # timeout=60
 > /usr/bin/git -c core.askpass=true fetch --tags --progress https://github.com/open-mpi/ompi +refs/heads/*:refs/remotes/origin/* # timeout=60
 > /usr/bin/git config --local --remove-section credential # timeout=60
 > /usr/bin/git config remote.origin.url https://github.com/open-mpi/ompi # timeout=60
 > /usr/bin/git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=60
 > /usr/bin/git config remote.origin.url https://github.com/open-mpi/ompi # timeout=60
Pruning obsolete local branches
Fetching upstream changes from https://github.com/open-mpi/ompi
using .gitcredentials to set credentials
 > /usr/bin/git config --local credential.helper store --file=/tmp/git1238703052703266541.credentials # timeout=60
 > /usr/bin/git -c core.askpass=true fetch --tags --progress https://github.com/open-mpi/ompi +refs/pull/*:refs/remotes/origin/pr/* --prune # timeout=60
 > /usr/bin/git config --local --remove-section credential # timeout=60
 > /usr/bin/git rev-parse refs/remotes/origin/pr/629/merge^{commit} # timeout=60
 > /usr/bin/git rev-parse refs/remotes/origin/origin/pr/629/merge^{commit} # timeout=60
 > /usr/bin/git rev-parse origin/pr/629/merge^{commit} # timeout=60
ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job.
[htmlpublisher] Archiving HTML reports...
[htmlpublisher] Archiving at BUILD level /var/lib/jenkins/jobs/gh-ompi-master-pr/workspace-2/cov_build to /var/lib/jenkins/jobs/gh-ompi-master-pr/builds/653/htmlreports/Coverity_Report
Setting commit status on GitHub for https://github.com/open-mpi/ompi/commit/65d5dce990d757e12f332cd7d43f47b94cc38593
[BFA] Scanning build for known causes...
[BFA] No failure causes found
[BFA] Done. 0s
Setting status of 6dd9658d73c792662a18681eecd87466c45863bf to FAILURE with url http://bgate.mellanox.com:8888/jenkins/job/gh-ompi-master-pr/653/ and message: 'Build finished.'
Using conext: Mellanox

@lanl-ompi
Copy link
Contributor

Test FAILed.

@mellanox-github
Copy link

Refer to this link for build results (access rights to CI server needed):
http://bgate.mellanox.com/job/gh-ompi-master-pr/652/

@hppritcha hppritcha added this to the Open MPI v2.0.0 milestone Jun 24, 2015
jsquyres added a commit to jsquyres/ompi that referenced this pull request Sep 19, 2016
op: allow user operations in ompi_3buff_op_reduce
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants