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

Testing: RMA AxpyInterface #34

Open
wants to merge 112 commits into
base: master
Choose a base branch
from
Open

Testing: RMA AxpyInterface #34

wants to merge 112 commits into from

Conversation

sg0
Copy link

@sg0 sg0 commented Feb 24, 2015

The changes are only localized to a few existing files and some new files, the intention is to improve the performance of Axpy interface by including new routines and modifying existing ones. Changes to particular files are mentioned below:

  1. Elemental AXPYInterface Original API - Disable the EOM matching functionality by introducing non-blocking consensus synchronization in Detach. Main logic is coded in mpi.hpp mpi.cpp, AxpyInterface.cpp and AxpyInterface.hpp
  2. Elemental AXPYInterface New API - Attach and Detach done once per DistMatrix, Put/Get/Acc blocking and non-blocking functions. Same interface is implemented using MPI-3 passive RMA, and MPI-2 send-recv.
    2.1. Implemented using MPI-3 RMA - Files affected are mpi.cpp, mpi.hpp, Rmainterface.hpp and Rmainterface.cpp.
    2.2. Implemented using MPI-2 sided send/recv - Files affected are mpi.cpp, mpi.hpp, Axpyinterface2.hpp and Axpyinterface2.cpp.

I think this could be improved further, and feedback/criticism is greatly appreciated. The interface was @jeffhammond 's idea, and I am thankful to him and Antonio Peña/Pavan Balaji from Argonne National Lab for all the help that lead to this.

sg0 added 30 commits June 12, 2014 10:33
…nterface code sync from his forked repo and defined EL_MPI_EXPERIMENTAL macro
…r performance; added non-blocking consensus stuff and dummy rma code, code in rmainterface is just some cut-paste, would work on it actively
…variant that waits instead of test in nbc...found a bug - when axpy dim < npes the nbc variant deadlocks...fixing it after some rma stuff
…n nbc is turned on, we could bypass everything related to handleoms and save memory
…ialization...intermediate commit, acc still does not work because of incorrect indices and window disp

std::vector<std::deque<bool>>
sendingData_, sendingRequest_, sendingReply_;
std::vector<std::deque<mpi::Request>>
Copy link
Member

Choose a reason for hiding this comment

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

std::vector and std::deque were imported into the El namespace, and so it is now okay (and preferred) to use just "vector" and "deque" (the same holds for "cout", "cerr", and "endl").

@poulson
Copy link
Member

poulson commented Mar 10, 2015

Hi Sayan,

Do you think that this PR is ready to be merged? It's probably best that it will be immediately after the 0.86 release, as I haven't had time to seriously test it.

The merge seems to not be able to be automatically handled right now. Do you think this could be easily fixed?

Jack

@sg0
Copy link
Author

sg0 commented Mar 10, 2015

Hi Jack - I think so, I shall fix the merge issues and notify.

Thanks,
Sayan

On Mon, Mar 9, 2015 at 8:54 PM, Jack Poulson [email protected]
wrote:

Hi Sayan,

Do you think that this PR is ready to be merged? It's probably best that
it will be immediately after the 0.86 release, as I haven't had time to
seriously test it.

The merge seems to not be able to be automatically handled right now. Do
you think this could be easily fixed?

Jack

Reply to this email directly or view it on GitHub
#34 (comment).

Regards,
Sayan

timmoon10 pushed a commit to timmoon10/Elemental that referenced this pull request Jul 31, 2018
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.

2 participants