yt_analysis is sharing code with you

Bitbucket is a code hosting site. Unlimited public and private repositories. Free for small teams.

Don't show this again

yt_analysis / yt http://yt-project.org/

yt is a python package for analyzing and visualizing astrophysical simulation output from a couple simulation platforms. Check out the homepage (there's a link just above!) where we have documentation, a cookbook, and some user community information.

Clone this repository (size: 41.6 MB): HTTPS / SSH
hg clone https://bitbucket.org/yt_analysis/yt
hg clone ssh://hg@bitbucket.org/yt_analysis/yt

Issues

#348 Quad proj doesn't scale

Reported by Matthew Turk

The quadtree projection does not scale particularly well (although it performs quite well in serial.) The merging algorithm requires transforming buffers into data structures, merging, and then transforming back. We should move to a system with a single transform, stratified by level with a PH key for the value, and stepping along it in 1D in sync between two trees to add them up.

This will require no modifications to the Python code for the projection itself, but the frombuffer/tobuffer code will require modification, as will the merging code.

One potential problem is that with 64-bit integers we may run out of positions in the PH curve for some types of simulations (i.e., mine.)

Status: open Responsible: Matthew Turk Type: bug Priority: major
Milestone: 2.4 Component: yt Version: none

Attachments

Comments and changes

  1. #1 Matthew Turk

    written

    • Changed status from new to open.

    Sam has an idea: simply make the tree for all the grids on all the processors, but don't fill them except on the processor that owns the grid. I think this might work.

  2. #2 Matthew Turk

    written

  3. #3 Matthew Turk

    written

    • Changed responsible from nobody to MatthewTurk.
  4. #4 Matthew Turk

    written

    Sam provided this scaling plot for the new version. I think there may still be room for further improvements, but I am pleased with how it has gone so far. The coefficients caused by the creation of the tree on every processor (which will impact the initial, low-processor count runs) as well as the collective communication (which will impact the high-processor count runs) combine and give an alright result. I'll be performing my own soon.

Add comment / attachment

Verification: Please write the text from the image in the box (letters only)

captcha

Is that you, Humanoid? Is this me?