Skip to content

MPI_Waitall optimization #176

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
ompiteam opened this issue Oct 1, 2014 · 13 comments
Closed

MPI_Waitall optimization #176

ompiteam opened this issue Oct 1, 2014 · 13 comments
Assignees
Milestone

Comments

@ompiteam
Copy link
Contributor

ompiteam commented Oct 1, 2014

The current MPI_Waitall() has O2 complexity
can do better.
very important for pps benchmarks

When using MPI_ISend + MPI_Waitall() is worse than using MPI_Send

@ompiteam
Copy link
Contributor Author

ompiteam commented Oct 1, 2014

Imported from trac issue 3663. Created by miked on 2013-07-11T09:20:07, last modified: 2014-04-22T16:22:58

@ompiteam ompiteam added this to the Open MPI 1.9 milestone Oct 1, 2014
@ompiteam
Copy link
Contributor Author

ompiteam commented Oct 1, 2014

Trac comment by bosilca on 2013-07-11 12:31:39:

Is there any proof the performance impact is coming from the MPI_Waitall implementation instead of the lack of ordering at the network level or the ordering (and amount) of the memory registrations) ?

@ompiteam
Copy link
Contributor Author

ompiteam commented Oct 1, 2014

Trac comment by amikheev on 2013-07-12 01:41:13:

Benchmark (slighly modified osu_mbw_mr) was done with zero sized messages. Either eager rdma or eager transport was used. It rules out memory registration.

Ordering can be ruled out because we essentially used single qp and single transport.

Switching from MPI_Waitall to MPI_Wait() on every single request improved things.

@ompiteam
Copy link
Contributor Author

ompiteam commented Oct 1, 2014

Trac comment by jsquyres on 2013-07-12 06:20:25:

Are you guys working on a patch?

@ompiteam
Copy link
Contributor Author

ompiteam commented Oct 1, 2014

Trac comment by jsquyres on 2013-07-16 12:12:40:

I notice this is assigned to ompi-rm-1.7, but there's no patch or r number associated with this ticket.

Assigning back to miked.

@ggouaillardet
Copy link
Contributor

@miked-mellanox is the issue still here ?

if yes, could you post the program you use to evidence it and how you run it ?

@mike-dubman
Copy link
Member

Hi @ggouaillardet
some of the issues we fixed in OMPI, but not all.
See attached ppt presented in one of the OMPI dev meeting with details.

We may have internal patch for MPI_Waitall, @alex-ma - please comment.

The test used was osu_mbr_mr

@alex-mikheev - do you have something to add?

slide1
slide2
slide3
slide4
slide5
slide6

@alex-mikheev
Copy link
Contributor

@ggouaillardet @miked-mellanox we never had a patch for MPI_waitall(). Instead we changed benchmark code to use MPI_Wait() to pick request completion in order instead of waiting for the whole window. I recall it improved message rate by 5-10%

The benchmark in question is osu_mbw_mr. I will see if I can upload my changes to github

yosefe pushed a commit to yosefe/ompi that referenced this issue Mar 5, 2015
oshmem: add missing helpfile to the tarball
@jsquyres
Copy link
Member

This issue (improving WAIT/TEST) has come up a few times (e.g., in the face-to-face dev meeting in Jan and June 2015). @bosilca is working on it.

@jsquyres
Copy link
Member

jsquyres commented Oct 5, 2015

@bosilca Did you ever make any progress on this TEST/WAIT optimization stuff?

@bosilca
Copy link
Member

bosilca commented Oct 5, 2015

Yes. It is in paper submission stage ...

@mike-dubman
Copy link
Member

out of curiosity, could you please share offline the conclusions and results?

@jsquyres jsquyres modified the milestones: Open MPI v2.x, Open MPI v2.0.0 Oct 5, 2015
@bosilca
Copy link
Member

bosilca commented Jul 1, 2016

This issue is now stale, all future discussion will go in #1820 ,

@bosilca bosilca closed this as completed Jul 1, 2016
dong0321 pushed a commit to dong0321/ompi that referenced this issue Jan 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants