[yt-users] IsBound and mpi4py

Eve Lee elee at cita.utoronto.ca
Wed Sep 28 10:23:30 PDT 2011


Thank you for all the suggestions.
I'll give them a try. :)

Best Regards,

Eve

On 09/28/2011 12:54 PM, Michael Kuhlen wrote:
>
> I have little to no experience with clump finding, but for the IsBound 
> part perhaps you could make use of symmetry? No idea how spherical (or 
> ellipsoidal) your clumps are, but you might consider first obtaining a 
> radial density profile (perhaps with ellipsoidal radius?) and then 
> using that to calculate the gravitational potential as a function of 
> radius, which you'd add to the specific kinetic energy of a given grid 
> cell to determine if it's bound. YMMV.
>
> Mike
>
> On Sep 28, 2011 9:14 AM, "Matthew Turk" <matthewturk at gmail.com 
> <mailto:matthewturk at gmail.com>> wrote:
> > On Wed, Sep 28, 2011 at 12:03 PM, Stephen Skory <s at skory.us 
> <mailto:s at skory.us>> wrote:
> >> Hi Eve,
> >>
> >>> But is the derived quantity "IsBound" also not parallel in 
> general? The code
> >>> I'm using does not use clump object at all; all it's doing is 
> picking out a
> >>> sphere object centred around some point in the box
> >>
> >> "IsBound" is precisely the expensive operation I mentioned in my last
> >> email that is not parallel. That calls the functionality that
> >> calculates the gravitational attraction between all cells in the
> >> object and tells you if the object is bound or not. When someone is
> >> sufficiently motivated, there are parallel treecodes that could be
> >> included in yt, but that would be a significant project, and is not
> >> likely to happen any time soon. Unless you want to volunteer! :)
> >>
> >>> I thought the reason why clump finding does not work in parallel 
> was because
> >>> parallel contour algorithm was not yet implemented, which, if I 
> understand
> >>> correctly, is separate from "IsBound".
> >>
> >> Yes, that is another reason why clump finding is not truly parallel.
> >
> > To echo what Stephen says, parallelizing clump finding is actually
> > easier than parallelizing the IsBound operation. There is some extant
> > code currently in testing to work with parallel clump finding, but I
> > do not have an estimate of when it could be included; likely not for
> > several months.
> >
> >>
> >> The only way clump finding is parallelized now is over individual
> >> clumps. That is, given a bunch of different objects, each object can
> >> be processed by a single core, and therefore many are done at the same
> >> time, but all the heavy lifting (IsBound) is done in serial.
> >
> > One can implement this with mpi4py, if you have saved clumps. You
> > will have to run yt in serial mode, but something like this could
> > work:
> >
> > from yt.mods import *
> > from mpi4py import MPI
> > rank = MPI.COMM_WORLD.rank
> > size = MPI.COMM_WORLD.size
> >
> > all_my_clumps = get_my_list_of_clumps(somehow)
> >
> > for clump in all_my_clumps[rank::size]:
> > binding_energy = clump.quantities["IsBound"]()
> >
> > We're hoping to add helper functions to make this kind of thing easier
> > in the future.
> >
> > -Matt
> >
> >>
> >> --
> >> Stephen Skory
> >> s at skory.us <mailto:s at skory.us>
> >> http://stephenskory.com/
> >> 510.621.3687 (google voice)
> >> _______________________________________________
> >> yt-users mailing list
> >> yt-users at lists.spacepope.org <mailto:yt-users at lists.spacepope.org>
> >> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
> >>
> > _______________________________________________
> > yt-users mailing list
> > yt-users at lists.spacepope.org <mailto:yt-users at lists.spacepope.org>
> > http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>
>
> _______________________________________________
> yt-users mailing list
> yt-users at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-users-spacepope.org/attachments/20110928/c85674e9/attachment.html>


More information about the yt-users mailing list