Interactive Volume Rendering Aurora on the GPU

Post on 03-Jan-2016

64 views 3 download

Tags:

description

Orion Sky Lawlor, Jon Genetti University of Alaska Fairbanks 2011-02-01 http://www.cs.uaf.edu/. Interactive Volume Rendering Aurora on the GPU. 8. Structure of talk: (1) What are the Aurora? (2) How do we represent Aurora on the GPU? (3) How do we render Aurora efficiently? - PowerPoint PPT Presentation

Transcript of Interactive Volume Rendering Aurora on the GPU

1

Interactive Volume Rendering Aurora on the GPU

Orion Sky Lawlor, Jon GenettiUniversity of Alaska Fairbanks

2011-02-01

http://www.cs.uaf.edu/

8

Structure of talk:(1) What are the Aurora?

(2) How do we represent Aurora on the GPU?

(3) How do we render Aurora efficiently?

(4) How do we render Aurora on a powerwall?

(5) Conclusions & future work

(1) What are the Aurora?

Charged particles from the Sun

Image credit: NASA

Particles intersect Magnetosphere

Image credit: Wikipedia

What are the Aurora?Sheets of electrons coming down

Earth's magnetic field lines, and

hitting the upper atmosphere

What are the Aurora?electrons: 1-20kV, millions of amps

magnetic field: inclined to surface

atmosphere: 50-500km up

Aurora: Best Viewed From Orbit

Image credit: NASA (ISS)

(2) Representing Auroraon the GPU

Prior Aurora Representations

Nonphysical hacks [e.g., screensavers] 100% phemonological No planet, no units, no atmosphere, etc. But it looks good

Individual Charged Particles [Baranoski, Rokne, et al] Easy to physically transport through magnetosphere Nearly zero data storage requirements Difficult to render from arbitrary viewpoint (sampling!)

Volume-Rendered Voxel Grid [Genetti] Easy to render from arbitrary viewpoint (raycasting) 10000 km * 10000 km * 500 km thick = serious RAM! Only feasible with hierarchical storage (slow render)

Our Aurora Representation

Factor 3D aurora display into 2D * height 2D is electron intensity map: “curtain footprints”

Stored as 163842 2D texture (polar coordinates) Currently generated with phenomological fluid hack Working on output from a real HPC simulation

Height-dependent electron deposition function Given electron intensity and height, return emission Also stored as a 2D texture, 10242

Computed from particle scattering laws [Lazarev] Uses MSIS upper atmosphere model

Auroral electrons are moving at relativistic speeds (60000 km/s for 10KeV), so this approximation is quite accurate

2D Curtain Footprints: Fluids Hack

Deposition Function: MSIS Atmosphere

Deposition Function vs Altitude

“Height” includes Magnetic Inclination

(3) Speeding up Rendering

Explicit list of compositing orders

Don't use Recursive Raytracing!

Begin with 2D Curtain Footprints

Build Distance Field to find Curtains

Algorithm:Jump Flooding[Rong & Tan]

Algorithm:Proximity Clouds[Cohen & Sheffer]

Use Distance Field to Render Curtains

Measured “Performance Image”

White = 200ns/pixel Black = 10ns/pixel

Compounding Speedups

Factor 3D into 2D + height: 2xUse GPU instead of CPU: 100xNon-recursive raytracer: 3xDistance field acceleration: 3.5x

Old version: 10 minutes/frame

New version: 20-60 frames/sec

(4) MPIglut &

1x109 rays/second

Powerwall Aurora Rendering

Sequential OpenGL Application

Parallel Powerwall Application

Compounding Speedups

Factor 3D into 2D + height: 2xUse GPU instead of CPU: 100xNon-recursive raytracer: 3xDistance field acceleration: 3.5xUse ten GPUs with MPIglut: 8x

Old version: 10 minutes/frame @ 1080p

New version: 30 frames/sec @ 8400x4200

Powerwall Aurora Rendering

Demo Movie

(5) Future Work:Moving curtains!

Red slow-glow

Terrain Geometry

Clouds & Sunrise

Planetarium Show

Questions?