[yt-dev] Fwd: [yt_analysis/yt] Volume Rendering Refactor (pull request #168)

Sam Skillman samskillman at gmail.com
Wed Jun 13 20:21:48 PDT 2012


Hi all,

Earlier today Cameron brought up some concerns about removing the behavior
of the off-axis-projection using interpolated data from vertex-centered
data.  If you recall from earlier discussions on the impact of the new
threading + opaque renderings + refactoring, one of the things we've done
is switch from the interpolation to using the raw values within each cell a
given ray traverses for use in the off-axis-projection.  This is
mathematically a more accurate representation of the data, but can
sometimes lead to blocky looking images.

What I've done is go through and add an optional interpolated=(False/True)
argument to the off_axis_projection call, where the default is False.
 Additionally, I've set this up so that it now wraps the ProjectionCamera
class, which is derived from the Camera class, so it has things like
.rotate, etc.

Just for reference, I'm including below both timings, results, and example
images, made using this script:
http://paste.yt-project.org/show/2462/

Here is the output:
Comparison of Raw vs Interpolated
Density
Raw -- Time: 1.173431e+00 seconds, min: 8.046089e-06, max: 1.177795e-02
Int -- Time: 6.393837e+00 seconds, min: 8.322453e-06, max: 1.113421e-02

Density-weighted Temperature
Raw -- Time: 8.513930e-01 seconds, min: 4.681834e+00, max: 1.237399e+07
Int -- Time: 8.450805e+00 seconds, min: 1.105447e+01, max: 1.213922e+07

The main difference that you see here is that the interpolated doesn't
capture the minima and maxima as well, which makes sense since it is
interpolating the data and smoothing out the peaks.  Note that the
Interpolated use the no_ghost=False option, which brings it much closer to
the Raw values.  This highlights the improvement off the
off_axis_projection for quantitative results, as it is both more accurate
and faster.  This is also a fairly small dataset.  Improvements for larger
simulations are even more impressive.

You can see the diff between this changeset and Matt's changeset that is
currently the PR changeset here:
https://bitbucket.org/samskillman/yt-refactor/compare/..MatthewTurk/yt-refactor

Please take a look.  I'm hopeful that with these changes pulled into Matt's
PR, we should be closer to this being accepted.

Along with these changes come some updated docs, as well as getting rid of
those pesky print statements that Britton saw.

Cheers,
Sam


On Wed, Jun 13, 2012 at 8:36 PM, Sam Skillman <samskillman at gmail.com> wrote:

> Hi Chris,
>
> Hmm,  maybe Pleiades sets OMP_NUM_THREADS=1 by default.  Can you check:
> echo $OMP_NUM_THREADS
>
> If it is either unset or set to 1, could you give it a shot with export
> OMP_NUM_THREADS=12?  The HT shouldn't help too much.
>
> Best,
> Sam
>
>
> On Wed, Jun 13, 2012 at 8:14 PM, Christopher Moody <cemoody at ucsc.edu>wrote:
>
>> Hi Matt,
>> Yep, this is an ART dataset. I had a node running with 12 (24 with HT)
>> cores at NASA Pleiades. It didn't go above 4% (=1/24) usage, which
>> indicates means it likely did not  use more than one core (but I
>> didn't tell it to). If there's a parallel version of the script I can
>> try it out tonight, and see the scaling.
>>
>> chris
>>
>> On Wed, Jun 13, 2012 at 1:01 PM, Matthew Turk <matthewturk at gmail.com>
>> wrote:
>> > Chris, is this an ART dataset rendering?  I love it.  Great work.
>> > And, did you note on your machine what the load went up to?  Did it
>> > scale with the numebr of cores okay?
>> >
>> > On Wed, Jun 13, 2012 at 3:47 PM, Christopher Moody <cemoody at ucsc.edu>
>> wrote:
>> >> Works for me!
>> >>
>> >> On one core, no_ghost=True, kd-Tree took 5 seconds, ray casting 56
>> >> seconds. Impressive.
>> >>
>> >> chris
>> >>
>> >> On Wed, Jun 13, 2012 at 10:45 AM, Matthew Turk <matthewturk at gmail.com>
>> wrote:
>> >>> Also, for what it's worth, John, Sam and I have been working on
>> >>> creating a movie sequence with this in HiDef for a display project.
>> >>> Once that's done we're going to be posting the movie, the original
>> >>> scripts, and potentially even a screencast of how one goes about doing
>> >>> a complex volume rendering.
>> >>>
>> >>> On Wed, Jun 13, 2012 at 12:34 PM, Sam Skillman <samskillman at gmail.com>
>> wrote:
>> >>>> Hi all,
>> >>>>
>> >>>> Here's a sample script that exposes a few of the new features such as
>> >>>> opacity and the map_to_colormap function.
>> >>>> http://paste.yt-project.org/show/2458/
>> >>>>
>> >>>> I'll see if I can get some more scripts written in a portable way.
>> >>>>
>> >>>> Cheers,
>> >>>> Sam
>> >>>>
>> >>>> On Wed, Jun 13, 2012 at 10:22 AM, John ZuHone <jzuhone at gmail.com>
>> wrote:
>> >>>>>
>> >>>>> Matt,
>> >>>>>
>> >>>>> I'll give it a whirl... it may take a day or two.
>> >>>>>
>> >>>>> John Z
>> >>>>>
>> >>>>> On Jun 13, 2012, at 11:12 AM, Matthew Turk wrote:
>> >>>>>
>> >>>>> > Sam and I chatted, and we'd like to request three people test
>> this and
>> >>>>> > if they all agree, we can accept it.
>> >>>>> >
>> >>>>> > Can three people give it a go?
>> >>>>> >
>> >>>>> >
>> >>>>> > ---------- Forwarded message ----------
>> >>>>> > From: Matthew Turk <pullrequests-noreply at bitbucket.org>
>> >>>>> > Date: Wed, Jun 13, 2012 at 11:12 AM
>> >>>>> > Subject: [yt_analysis/yt] Volume Rendering Refactor (pull request
>> #168)
>> >>>>> > To: yt at enzotools.org
>> >>>>> >
>> >>>>> >
>> >>>>> > A new pull request has been opened by Matthew Turk.
>> >>>>> >
>> >>>>> > MatthewTurk/yt-refactor has changes to be pulled into
>> yt_analysis/yt.
>> >>>>> >
>> >>>>> >
>> >>>>> >
>> https://bitbucket.org/yt_analysis/yt/pull-request/168/volume-rendering-refactor
>> >>>>> >
>> >>>>> > Title: Volume Rendering Refactor
>> >>>>> >
>> >>>>> > This includes all of the changes to the volume rendering system
>> that
>> >>>>> > were discussed here:
>> >>>>> >
>> >>>>> >
>> >>>>> >
>> http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/2012-June/002039.html
>> >>>>> >
>> >>>>> > The main user-facing changes that could cause problems:
>> >>>>> >
>> >>>>> > 1) Cython 0.16 is now required.
>> >>>>> > 2) Off-axis projections no longer interpolate.
>> >>>>> >
>> >>>>> > Changes to be pulled:
>> >>>>> >
>> >>>>> >
>> >>>>> >
>> >>>>> > --
>> >>>>> > This is an issue notification from bitbucket.org.
>> >>>>> > You are receiving this either because you are the participating
>> >>>>> > in a pull request, or you are following it.
>> >>>>> > _______________________________________________
>> >>>>> > yt-dev mailing list
>> >>>>> > yt-dev at lists.spacepope.org
>> >>>>> > http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>> >>>>>
>> >>>>> _______________________________________________
>> >>>>> yt-dev mailing list
>> >>>>> yt-dev at lists.spacepope.org
>> >>>>> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>> >>>>
>> >>>>
>> >>>>
>> >>>> _______________________________________________
>> >>>> yt-dev mailing list
>> >>>> yt-dev at lists.spacepope.org
>> >>>> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>> >>>>
>> >>> _______________________________________________
>> >>> yt-dev mailing list
>> >>> yt-dev at lists.spacepope.org
>> >>> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>> >>
>> >> _______________________________________________
>> >> yt-dev mailing list
>> >> yt-dev at lists.spacepope.org
>> >> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>> >>
>> > _______________________________________________
>> > yt-dev mailing list
>> > yt-dev at lists.spacepope.org
>> > http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>> _______________________________________________
>> yt-dev mailing list
>> yt-dev at lists.spacepope.org
>> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20120613/86f52409/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: oa_temperature_interp.png
Type: image/png
Size: 216073 bytes
Desc: not available
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20120613/86f52409/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: oa_temperature_raw.png
Type: image/png
Size: 249141 bytes
Desc: not available
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20120613/86f52409/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: oa_interp.png
Type: image/png
Size: 195770 bytes
Desc: not available
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20120613/86f52409/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: oa_raw.png
Type: image/png
Size: 220202 bytes
Desc: not available
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20120613/86f52409/attachment-0003.png>


More information about the yt-dev mailing list