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 mpi helper classes #163

Merged
merged 35 commits into from Nov 9, 2015

Conversation

Projects
None yet
4 participants
@sdrave
Member

sdrave commented Oct 7, 2015

This pull request contains the mpi helper classes from the pymor-paper branch. Merging this will close #119.

sdrave and others added some commits May 7, 2015

[vectorarrays] add MPIVectorArrayAutoComm, MPIVectorArrayNoComm, MPIV…
…ectorAutoComm, MPIVectorNoComm

replacing MPIDistributed, MPIDistributedVector, MPIForbidCommunication,
MPIVectorForbidCommunication

@sdrave sdrave added this to the 0.4 milestone Oct 7, 2015

@sdrave

This comment has been minimized.

Member

sdrave commented Oct 7, 2015

Before merging we should check if everything still works and if we are happy with the interfaces ...

HAVE_MPI = True
comm = MPI.COMM_WORLD
rank = rank = comm.Get_rank()

This comment has been minimized.

@ftalbrecht

ftalbrecht Oct 7, 2015

Member

Is this correct and/or intended?

def method_call0_manage(obj_id, name, *args, **kwargs):
obj = get_object(obj_id)
return manage_object(getattr(obj, name)(*args, **kwargs))

This comment has been minimized.

@ftalbrecht

ftalbrecht Oct 7, 2015

Member

I wonder: could we not implement all the method_call..._manage by redirecting to the appropriate method_call..., instead of duplicating the code?

This comment has been minimized.

@sdrave

sdrave Oct 8, 2015

Member

The reason all those variants are here is performance. If I remember correctly, I decided during development, that the performance gain is probably not worth it, which is why anything but method_call and method_call_manage is rarely used.

I guess I will simply remove all method_callN methods and, indeed, call method_call in method_call_manage. Moreover, I will add a function_call for the sake of completeness.

@landscape-bot

This comment has been minimized.

landscape-bot commented Oct 7, 2015

Code Health
Repository health decreased by 0.18% when pulling 29d03d9 on mpi_merge into 9f1b01d on master.

@sdrave

This comment has been minimized.

Member

sdrave commented Oct 9, 2015

I have added some documenation for pymor.tools.mpi.

@sdrave sdrave force-pushed the mpi_merge branch from 7cfb66b to 32557f4 Oct 9, 2015

@landscape-bot

This comment has been minimized.

landscape-bot commented Oct 9, 2015

Code Health
Repository health decreased by 0.21% when pulling 32557f4 on mpi_merge into b76df09 on master.

ipython console --existing file_name_printed_by_ipython.json
(Starting the IPython console directly will not work properly

This comment has been minimized.

@ftalbrecht

ftalbrecht Oct 9, 2015

Member

the IPython (too much whitespace)

"""Execute a method with given arguments and manage the return value.
Intended to be used in conjunction with :func:`call`.
The return value of `f` is managed by calling :func:`manage_object`

This comment has been minimized.

@ftalbrecht

ftalbrecht Oct 9, 2015

Member

Not f, but the method given by name

@ftalbrecht

This comment has been minimized.

Member

ftalbrecht commented Oct 9, 2015

Thx for the documentation. I did not test for functionality, apart from that I am happy...

@sdrave

This comment has been minimized.

Member

sdrave commented Oct 9, 2015

I have fixed the documentation issues in pymor.tools.mpi and added docs for pymor.vectorarrays.mpi

@ftalbrecht

This comment has been minimized.

Member

ftalbrecht commented Oct 9, 2015

Also happy with the new documentation, thx!

@landscape-bot

This comment has been minimized.

landscape-bot commented Oct 10, 2015

Code Health
Repository health decreased by 0.18% when pulling a795ab3 on mpi_merge into b76df09 on master.

@landscape-bot

This comment has been minimized.

landscape-bot commented Oct 20, 2015

Code Health
Repository health decreased by 0.16% when pulling 7015744 on mpi_merge into b76df09 on master.

@sdrave

This comment has been minimized.

Member

sdrave commented Nov 6, 2015

So I have finally documented pymor.discretizations.mpi. From my point of view, this is now ready to merge. It would be nice if we had some kind of tutorial document for using pyMOR with MPI discretizations, but I guess I have no time for this in the near future.
Anyway, it is probably more important to improve the dune-burgers-demo repo, add some main script which actually does model reduction and so on ..

@landscape-bot

This comment has been minimized.

landscape-bot commented Nov 6, 2015

Code Health
Repository health decreased by 0.15% when pulling a31d42c on mpi_merge into b76df09 on master.

@landscape-bot

This comment has been minimized.

landscape-bot commented Nov 6, 2015

Code Health
Repository health increased by 0.37% when pulling 493f49e on mpi_merge into 98b014e on master.

sdrave added a commit that referenced this pull request Nov 9, 2015

Merge pull request #163 from pymor/mpi_merge
Add MPI helper classes

@sdrave sdrave merged commit a3b5e0d into master Nov 9, 2015

2 of 3 checks passed

QuantifiedCode We found 147 new issue(s), merge with caution!
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@sdrave sdrave deleted the mpi_merge branch Nov 9, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment