Visualization and VR for the Grid · 2004. 5. 25. · Real-Time Ray Tracer (RTRT)Real-Time Ray...

Post on 13-Oct-2020

12 views 0 download

Transcript of Visualization and VR for the Grid · 2004. 5. 25. · Real-Time Ray Tracer (RTRT)Real-Time Ray...

SCI Utah

Visualization and VR for the Grid

Chris JohnsonScientific Computing and Imaging Institute

University of Utah

Visualization and VR for the Grid

Chris JohnsonScientific Computing and Imaging Institute

University of Utah

SCI UtahConstruct a model of the physical

domain (Mesh Generation, CAD)Apply boundary conditionsNumerically approximate governing

equations (FE, FD, BE)Compute (Preconditioners, Solvers)Visualize (Isosurfaces, Vector Fields,

Volume Rendering)Think about the BIG PICTURE!

Computational Science PipelineComputational Science Pipeline

SCI UtahComputational Science PipelineComputational Science Pipeline

Modeling

Simulation

Visualization

Integration!Think aboutPipelineComplexity!

SCI UtahInteractive Large-Scale VisualizationInteractive Large-Scale Visualization

Medical

ScientificComputing

GeoScience

SCI UtahAn HPV Success StoryAn HPV Success Story

SCI UtahWhy Parallel Visualization?Why Parallel Visualization?

P4

Terabyte

SCI UtahWhy Parallel Visualization?Why Parallel Visualization?

• Large Amounts of Data

• Compute Intensive Rendering

• Need Interactivity!

SCI UtahVisualization Algorithm ClassificationVisualization Algorithm Classification

The visualization rendering pipeline:

GeometryDatabase

GeometryTransformation

Rasterization

Image

Per Vertex

Per Pixel

SCI UtahParallel Visualization TaxonomyParallel Visualization Taxonomy

[Molnar et al. `94]

Sort-First

3D Primitives

Sort-Middle

2D Primitives

Sort-LastDatabase Traversal

G

R

Display

G G G

R R R

Preprocessing

Database Traversal

G

R

Display

G G G

R R R

Preprocessing

Database Traversal

G

R

Display

G G G

R R R

Preprocessing

Rendered Pixels

SCI UtahParallel Visualization – 1995Parallel Visualization – 1995CM-5 Sort LastMolecularDynamicsVisualization

SCI UtahParallel Visualization - 1996Parallel Visualization - 1996T3DNOISESort-Middle10 FPSHIPPI-FB

SCI Utah

Parallel Visualization 1998-2002Parallel Visualization 1998-2002

Origin 2000 - 3000New ParadigmNUMA DSMMultiple-Graphics HW

SCI UtahReal-Time Ray Tracer (RTRT)Real-Time Ray Tracer (RTRT)

Implemented on SGI Origin 3000 ccNUMA architecture - up to 512 processors (now working on a distributed version)

Approximately linear speedupLoad balancing and memory

coherence are key to performance

SCI UtahReal-Time Ray TracerReal-Time Ray Tracer

SCI Utah

Real-Time Ray Tracer - ScalabilityReal-Time Ray Tracer - Scalability

SCI Utah

Molecular Simulation and VisualizationMolecular Simulation and Visualization

Protein MoleculesKlaus SchultenTheoretical BiophysicsGroup, UIUC

SCI UtahReal-time Surface RenderingReal-time Surface Rendering

SCI UtahReal-time Volume RenderingReal-time Volume Rendering

SCI UtahHardware MultipipeHardware Multipipe

Partition Image using Hilbert Curve

IR1

IR2

IR3

IR4

IR1

IR2

IR3

SCI UtahRequires 5GB/sec of disk I/O bandwidth for 3-5

Hz interaction rate- Impedance match to pipe texture

download speed- 96 fibre channel interfaces, 6 per pipe

TRex:LANL/Utah

IR IR IR IRRAM

Multi-pipe Volume RenderingMulti-pipe Volume Rendering

SCI Utah

TRex: Multipipe Volume RenderingTRex: Multipipe Volume Rendering

SCI UtahHardware Multipipe ResultsHardware Multipipe Results

0

5

10

15

20

25

Avg FPS

1 2 4 8

Number of Tiles

Average FPS for 3GB 512x512 Image

1 IR 2 IR4 IR8 IR

SCI UtahOverview of Parallel Visualization TechniquesOverview of Parallel Visualization Techniques

Scalability / Interactivity

Rendering Features Polygon rendering

GlobalIllumination

RTRTMultipipeGlobalIllumination

MultipipeRendering

SCI Utah

What’s Next?What’s Next?

Cluster and Grid VisualizationWhy?• Current high end visualization

hardware is expensive• Current high end hardware not flexibleBut the real reason is:Clusters and the Grid are: cool, hot

fashionable, “the in thing”

SCI UtahCluster and Grid VisualizationCluster and Grid Visualization

So, why are there ZERO papers on visualization in CCGrid?• Maybe visualization isn’t important?

• 66% of your brain is for visualization

• Visualization on clusters and grids is HARD!

SCI Utah

Current Grid Based VisualizationCurrent Grid Based Visualization

Non-interactive Visualization

SCI UtahGrid Visualization?Grid Visualization?

SGI RealityMonsterSGI RealityMonster

MasterThread

ClientThread

ClientThread

Network

...

...

InfiniteRealityGraphics

InfiniteRealityGraphics

ProjectorProjectorProjectorProjectorProjectorProjectorProjectorProjector

OpenGL Protocol

ClientApp

PipeThread

PipeThread

ClientApp

"Mural Server"(8 processor SGI Origin)

G. Humphreys, P. Hanrahan, A distributed graphics system for large tiled displays, Vis99

PC “RealityMonster”PC “RealityMonster”

G. Humphreys, I. Buck, P. Hanrahan, Distributed rendering for large tiled displays, Supercomputing 2000

MasterThread

ClientThread

ClientThread

Network

...

...OpenGL Protocol

ClientApp

Pipe Server

ClientApp

"Mural Server"(PC Cluster Version)

Pipe ServerPipe ServerPipe ServerPipe ServerPipe ServerPipe ServerPipe Server

ProjectorProjectorProjectorProjectorProjectorProjectorProjectorProjector

Net

wor

k GFX HWGFX HWGFX HWGFX HWGFX HWGFX HWGFX HWGFX HW

SCI UtahVisualization on ClustersVisualization on Clusters

Sort-First

3D Primitives

Database Traversal

G

R

Display

G G G

R R R

Preprocessing

Parallelize

Parallelize (Custom HW)

SCI UtahStanford ClusterStanford Cluster

Multi-projector BasedSort First Parallel Rendering Custom DVI Compositing Network

•Similar in spirit to Sepia (Compaq)

WireGL Software

SCI UtahChromium Cr(Cluster Renderer)Chromium Cr(Cluster Renderer)

Cluster: 32 graphics nodes, 4 server nodesComputer: Compaq SP750

• 2 processors (800 Mhz, 133Mhz FSB)• i840 core logic (biggest issue for vis-clusters)• 256 MB memory• 18GB disk (+ 3*36GB on servers)• 64-bit, 66 Mhz PCI• AGP-4X Pro

Graphics• NVIDIA GeForce3

Network• Myrinet 64-bit, 66 Mhz

http://sourceforge.net/projects/chromium/

SCI UtahPrinceton - ClusterPrinceton - Cluster

Commodity Clustering

SCI UtahUT Austin ClusterUT Austin ClusterCompaq ClusterMulti-Projector Custom Compositing Network

SCI UtahUtah Visualization ClusterUtah Visualization Cluster

64 CPUs (1.7 GHz P4, 1 Gb memory each)Nvidia GeForce 3Switch connected GigE networkHeavy duty cooling racks

SCI UtahCluster VisualizationCluster VisualizationClusters (basically multipipe rendering)- Compaq- Princeton- Stanford - UT Austin- Cal Tech- etc…...

Sort Last

Sort First

SCI UtahAdding Clusters to the PictureAdding Clusters to the Picture

Scalability / Interactivity

Rendering Features Polygon rendering

GlobalIllumination

RTRTMultipipeGlobalIllumination

Clusters

MultipipeRendering

SCI Utah

Grid Visualization Service ApproachesGrid Visualization Service Approaches

Do everything on the remote server• Pros: simple to grid enable existing packages• Cons: high latency, eliminates possibility of

proxying and caching at local site.

ModerateBandwidth

Link

Very high-endremote server

Localmachine

SCI UtahDo everything but the rendering on the remote server

• Pros: fairly simply to grid-enable existing packages, removes some load from the remote site.

• Cons: requires every local site to have good rendering power.

High-endremote server

Computer with good rendering power

Moderatebandwidth

Link

Grid Visualization Service ApproachesGrid Visualization Service Approaches

SCI Utah

Highbandwidth

link

High-endremote server

Low-endlocal PC

Moderatebandwidth

link

Powerful localproxy server

Use a local proxy for the rendering• Pros: offloads work from the remote site, allows

local sites to contribute additional resources.• Cons: local sites may not have sufficiently

powerful proxy resources, application is more complex, requires high bandwidth between local and remote sites.

Grid Visualization Service ApproachesGrid Visualization Service Approaches

SCI UtahDo everything at the local site.• Pros: low latency, easy to grid-enable existing

packages.• Cons: requires high-bandwidth link between

sites, requires powerful compute and graphics resources at the local site.

Grid Visualization Service ApproachesGrid Visualization Service Approaches

Ultrahigh Bandwidth

Link Low-endremote server

Powerfullocal server

SCI UtahGrid Visualization NeedsGrid Visualization Needs

Assertion: static application partitions are not appropriate for heavyweight grid services

Need a uniform framework for grid-enabling and partitioning heavyweight services such as remote visualization.

SCI Utah

Challenges to Providing Heavyweight Grid ServicesChallenges to Providing Heavyweight Grid Services

Grid visualization resources are limited• We must find an easy way to grid-enable existing

packages.Grid resources are “wildly” heterogeneous wrt to

Visualization (graphics, displays, I/O, plus usual)• Programs should be performance-portable (sense

resources at load time) and configure themselves in some “optimal” way.

Grid resources are dynamic• Programs need be adaptive to dynamical adjust to

changing resources – might need user decision (e.g. accuracy versus frame rate)

Applications that provide heavyweight grid services must be resource-aware.

SCI UtahActive Frames - CMUActive Frames - CMU

Framedata

Activeframe

interpreterApplication

librariese.g, vtk

Framedata

Frameprogram

Active Frame Server

Input Active Frame Output Active Frame

Host

Frameprogram

David O’Hallaron, CMU

Dv is a flexible framework that allows one to schedule and partition heavyweight services, based on the notion of a “active frame.”

SCI UtahGrid-Enabling vtk with DvGrid-Enabling vtk with Dv

reader

localDv

client

response frames (to other Dv servers)

[appl. data, scheduler, flowgraph,control ]

request frame[request server, scheduler, flowgraph, data reader ]

request server

remote machine

... local Dv

serverscheduler

result

...

local machine(Dv client)

David O’Hallaron, CMU

SCI UtahCactus – Ed Seidel Cactus – Ed Seidel

SCI UtahGrid Visualization AlgorithmsGrid Visualization Algorithms

Compression (wavelets, multiresolution, mpeg, etc.)

Importance Based RenderingView DependentImage Based RenderingAdaptive (Resource Aware)

Parallel/Distributed Techniques

SCI UtahPoint-Cloud Rendering - ISIPoint-Cloud Rendering - ISI

Thiebaux/Czajkowski/Kesselman - ISI

SCI UtahVolume Browsing Path - ISIVolume Browsing Path - ISI

Volume time-series (3D×time×scalar)Parallel search/sort converts to OpenGL geom.Double-buffered frame reassembly

Reduction

TCP/IP

RenderingSorting Transport

... ... ... ...

Receive Buffer

Parallel I/O

Thiebaux/Czajkowski/Kesselman - ISI

SCI UtahThe Visualization PipelineThe Visualization Pipeline

Search Renderconstruct

Isovalue

OnlineOffline

Reduce the amount of data• Reduce during the search...

Pre-process

View point

O(k) O(k)O(V(k)) O(V(k))

SCI UtahA View-dependent ApproachA View-dependent ApproachAttractive for:

• Grid visualization• Large data sets• Sub-pixel polygons

SCI UtahView Dependent - Visible WomanView Dependent - Visible Woman

Full ViewIsosurface depend

Polys 2,246,000 246,000 Create 177 sec 72 secRender 2.32 sec 0.25 sec

SCI Utah

Parallel Image Based RenderingParallel Image Based RenderingSize of the reconstruction image

• per pixel costComplexity

• Modeling Complexity• Polygon Count• Lighting Complexity

SCI UtahParallel IBRParallel IBR

Part of Distributed Visualization

SCI Utah

Immersive Interactive VisualizationImmersive Interactive Visualization

SCI UtahMultiple Fields - HapticsMultiple Fields - Haptics

SCI UtahImmersive CFD VisualizationImmersive CFD Visualization

SCI UtahFuture for Grid VisualizationFuture for Grid Visualization

Scalability / Interactivity

Rendering Features Polygon rendering

GlobalIllumination

RTRTMultipipeGlobalIllumination

Clusters

IBR methods

Grid Visualization

Multiresolution

View DependentAdaptive/Aware

Importance Based

New Algorithms

SCI UtahFuture of Grid Visualization?Future of Grid Visualization?GAMES!!!!!

16-way parallel2GB RAMBUS 1G Polys per sec

50GB/sec memory bus1920x1080 resolution

SCI UtahFuture of Grid Visualization?Future of Grid Visualization?

SCI UtahAcknowledgementsAcknowledgements

DOE ASCI and SciDACNSFNIH NCRR and BISTISGI Visual Supercomputing

CenterVisual Influence

SCI Utah

Scientific Computing and ImagingScientific Computing and Imaging

SCI Utah

SCI UtahMore InformationMore Information

www.sci.utah.eduwww.sci.utah.edu

crj@sci.utah.educrj@sci.utah.edu