# Presentation: 158116

## Randall Frank
Lawrence Livermore National Laboratory

**Lawrence Livermore National Laboratory**

**Cluster Issues for Visualization Applications: ****LLNL VIEWS Visualization Project**

**Notes:**
This is the template to use for the 2000 ASCI PI meeting at LLNL.  All text enclosed in [] should be either removed or updated to the appropriate value (with the [] removed after updating).

## Example Application:TeraScale Browser

**The browser allows the user to interactively “browse” a tera-scale dataset and identify regions to pass to other tools, acting as a front-end or embedded capability for external visualization applications**
**Interactions**
- Direction manipulation
- Tiled display support
- Stereo/immersive
**Rendering**
- Multi-pipe rendering
- View dependent
- “Interactive” rates
**High performance I/O**
- Full, space-time interaction
- Demand driven rendering

## Anatomy of a Visualization Application

** **

**Geometry**
**Extraction**

**Rendering**
**Engine**

**Processed Data Cache**

**Raw Simulation Data**

**PowerWall**

**Desktops**

**Executing**
**Simulation**

**User Interaction**

## Roadblocks to Visualization Applications

**Inability to properly utilize graphics hardware**
- Leverage new commodity graphics cards for scalability
- OpenGL drivers needed on the rendering nodes
- Graphics cluster architectures needed
- Can rendering nodes be abstracted to network devices?
- How to composite the output of 100’s of graphics cards?

## Roadblocks to Visualization Applications

**Interaction and display modality issues**
- The user is in the loop and driving the “computation”
- Desktop delivery of imagery
- Analog
- Digital
- Advanced displays (1280x1024 is insufficient)
- Tiled PowerWall (multiple, synchronized video outputs)
- Stereo/Immersion (feedback and refresh at 30Hz)
- Latency
- Image compositing systems
- Device interfaces

## Roadblocks to Visualization Applications

**Lack of high performance I/O on the clusters**
- Multi-terabyte datatsets
- Fundamental assumption: Dataset is larger than memory
- Node RAM is a cache for graphics cards
- Often run as a post-processing operation
- Reviewing previously generated timesteps
- Visualization of features over time
- Data access patterns are dynamic and driven by the user
- Temporal/spatial view dependent rendering selects data
- “Browsing” is random access read operation
- Global vs Local disk
- Can global cluster filesystems supply the bandwidth?
- Can we afford to move terabytes of data to local disks?

## Slide 7

## User Interaction and Advanced Displays

**The user supplies continuous direct and indirect input based on rendered output.  The system drives multi-pipe and multi-projector displays.**
**Input devices**
- Immersion
- Head tracking
**Displays**
- Video routing
- Multi-pipe output
**Issues**
- Performance
- Latency
- Synchronization

## Scalable Parallel Rendering: Where do we sort?

**Parallel rendering systems**
- “Sort last” compositing scheme
- Latency in the composite
- Expensive multi-pass
- Little data movement
- Large “pixel” movement
- “Sort first” tiling scheme
- Large data movement
- Little “pixel” movement
- Simple “composite” operation

## COTS Graphics Hardware
GeForce : 15M tris/s,  480M pixel/s fill, $250
IR pipe: 10M tris/s, 200M? pixel/s fill, $85,000
Cards in the cluster nodes
Distributed rendering capacity 
Node allocation
Drivers for the cluster OS
Node resources
The “Network” IR pipe
Dedicated (heterogeneous?) nodes
Common API, OS neutral
Bandwidth requirements
Dedicated interconnect
Are they different?

- GeForce : 15M tris/s,  480M pixel/s fill, $250
- IR pipe: 10M tris/s, 200M? pixel/s fill, $85,000
**Cards in the cluster nodes**
- Distributed rendering capacity
- Node allocation
- Drivers for the cluster OS
- Node resources
**The “Network” IR pipe**
- Dedicated (heterogeneous?) nodes
- Common API, OS neutral
- Bandwidth requirements
- Dedicated interconnect
**Are they different?**

**Scalable Parallel Rendering: Clustered cards? **

## I/O Demands

**Often run in post processing scenarios**
- Read dominated
- Access across timesteps
- Small reads from multiple files
- How to get data from global to local disks
***in situ *****operation**
- Time history visuals require buffering
- Memory footprint limits
- Scratch space necessary?
**High performance I/O**
- Browsing assumes disk to graphics pipe performance