Presentation is loading. Please wait.

Presentation is loading. Please wait.

03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer.

Similar presentations


Presentation on theme: "03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer."— Presentation transcript:

1 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer Polina Kondratieva Rüdiger Westermann Authors: Hector M. Garcia Presented By:

2 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 2 Problem In flow research and industrial practice vector field data is one of the key sources for the analysis of flow field dynamics Visual exploration of complex fields imposes significant requirements on the visualization system and demands for approaches capable of dealing with large amounts of vector valued information at interactive rates. Previous approaches to virtually explore high-resolution flow fields lack the ability to simultaneously advect and display large amounts of particles.

3 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 3 Advection Advection is transport in a fluid The fluid is described mathematically for such processes as a vector field, and the material transported is described as a scalar concentration of substance, which is present in the fluid. A good example of advection is the transport of pollutants or silt in a river: the motion of the water carries these impurities downstream.

4 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 4 Motivation Overcome current methods limitations by exploiting features of recent graphics accelerators to advect particles in the graphics processing unit (GPU). Ability to achieve interactive streaming and rendering of millions of particles using higher order numerical integration schemes. Enable the virtual exploration of large fields in a way similar to real-world experiments.

5 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 5 Motivation

6 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 6 Some background info… GPU = Graphics Processing Unit. It is a dedicated graphics rendering device. GPUs have a highly parallel structure which makes them more effective than typical CPUs for a range of complex algorithms.

7 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 7 More background info… Recent developments in GPUs include support for programmable shaders Because most of these computations involve matrix and vector operations, engineers and scientists have increasingly studied the use of GPUs for non- graphical calculations. Applications requiring massive vector operations, can make use of the massive floating-point computational power of a GPU. This can yield several orders of magnitude higher performance than a conventional CPU.

8 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 8 Related Work Particle tracing techniques for flow viz have been studied intensively. Core of these techniques use numerical integration schemes. In flow viz context, analysis of such schemes with respect to stability,accuracy and performace.

9 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 9 Related Work (cont’d…) Particle-based techniques can visualize local features in the flow. Global imaging techniques for 3D fields can illustrate global behavior. LIC-methods allow for interactive 2D vector fields but no good in 3D flow.

10 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 10 Related Work (cont’d…)

11 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 11 Methods Propose a method for overcoming both computation and bandwidth limitations using the GPU. Use GPU for advection and rendering computations. Use improvements to rendering pipeline.

12 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 12 Methods (cont’d…)

13 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 13 Methods (cont’d…) Using this functionality, particle tracing can be performed entirely on the GPU. Their method computes intermediate results saves them in texture memory and uses them again as input to the geometry units to render images in the frame buffer. Initial particle positions stored in RGB texture of size M x N. User defines number of particles and appropriate texture is generated on the CPU and uploaded on the GPU. Particle Integration  Incarnation  advection

14 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 14 Methods (cont’d…)

15 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 15 Methods (cont’d…) Particle Incarnation  Transformation  Birth  Update Particle Advection  Texture access  Death test Advection Reincarnation

16 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 16 Methods (cont’d…) GPU particle engine for flow viz is implemented in Cg

17 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 17 Methods (cont’d…)

18 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 18 Methods (cont’d…) Particle Rendering  OpenGL SuperBuffer Memory object is bound as the current texture render target and as a vertex array used to draw particle primitives.  Vertex Texture Fetch The key concept is to let the fragment units generate textures and to use these textures as displacement maps for geometric primitives in subsequent rendering passes.

19 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 19 Methods (cont’d…) Rendering  Points Maximum number of particles stored in video memory rendered as color primitives is 250 million per second  Oriented Point Sprites Used to reveal flow direction. Use a sprite texture atlas for arbitrary shaped geometry

20 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 20 Point Rendering

21 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 21 Oriented Point Sprite Rendering

22 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 22 Sorting Authors implement a GPU sorting network into their particle engine.  Based in the Bitonic merge sort algorithm.  Well suited for GPU architecture because sequence of operations is fixed and not dependent in the data to be sorted.

23 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 23 What is Bitonic merge sort? Data independent sorting method based on the bitonic sequence A 0-1-sequence is called bitonic, if it contains at most two changes between 0 and 1. More generally, a sequence of numbers is bitonic sequence if it has at most one local maximum or one local minimum.  Examples: 1,2,3,4,5 ; 10,6,5,3,1 ; 3,7,9,8,6,5,4,1 10,8,6,9,12,15,20

24 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 24 How does it look like ?

25 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 25 Derived Flow attributes Velocity Divergence Enstrophy 2

26 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 26 Derived Flow attributes (contd…)

27 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 27 Visualization Geometry Stream Lines  Ping pong buffer (double buffer)  Texture samples interpreted as control points  Draw polylines of T control points Stream Ribbons  Show rotation about the flow axis  Build a second atlas that contains the other rim of each stream line rotating the initial normal vector according to the accumulated increment angles.

28 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 28 Stream Lines

29 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 29 Stream Ribbons

30 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 30 Evaluation Model runs at interactive rates on PC hardware It outperforms CPU counterparts Show timing statistics to compare their GPU implementation vs. CPU.

31 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 31 Evaluation (cont’d…) Lets take a test drive !

32 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 32 Conclusion Authors successfully demonstrates advantages of a GPU implementation of a particle flow simulation. The possibility of integrating numerically and data intensive computations for flow analysis into the rendering process distinguishes the GPU engine from previous approaches.

33 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 33 Conclusion (cont’d…) Besides particle advection, the engine provides a variety of visualization options to visually convey relevant structures in 3D steady flow fields. By using massive particle sets in combination with oriented sprites, LIC-like visualizations can be achieved at interactive rates. This includes higher order integration schemes, thus providing numerically accurate particle traces.

34 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 34 Questions Given the parallel architecture of GPUs would a GPU cluster method help for visualizing massive global 3D flow visualizations?

35 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 35 Questions (cont’d…) How would the performance of the visualization engine be impacted if the vector field is fed by a fully functional numerical model. i.e. ROMS

36 03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 36 Questions (cont’d…) Could their implementation be easily extended to non-uniform grids ?


Download ppt "03-28-2007MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer."

Similar presentations


Ads by Google