[Yt-dev] Projection speed improvement patch

Matthew Turk matthewturk at gmail.com
Sun Nov 8 16:06:17 PST 2009


> Pardon my ignorance, but how is the Alltoallv used? In Parallel HOP, I communicate arrays that are large fractions of a GB in size with no problem using un-pickled methods. I looked and it appears that Alltoallv is a not pickling comm, is this correct?

Hi Stephen,

No, you're totally right, it's used to communicate a single array via
direct buffers at a time.  So if you're projecting Density and
Temperature, the alltoall would be something like:

calculate_sizes
calculate_offsets
for field in "px" "py" "pdx" "pdy" "Density" "Temperature:
    create_full_array
    alltoall(sizes, offsets, field, full_array)

I'm not sure what the deal is with OpenMPI on Ranger.  I'll see if I
can replicate this and dig a bit deeper on Ranger tomorrow...

-Matt



More information about the yt-dev mailing list