WireGL: a scalable graphics system for clusters

We describe WireGL, a system for scalable interactive rendering on a cluster of workstations. WireGL provides the familiar OpenGL API to each node in a cluster, virtualizing multiple graphics accelerators into a sort-first parallel renderer with a parallel interface. We also describe techniques for reassembling an output image from a set of tiles distributed over a cluster. Using flexible display management, WireGL can drive a variety of output devices, from standalone displays to tiled display walls. By combining the power of virtual graphics, the familiarity and ordered semantics of OpenGL, and the scalability of clusters, we are able to create time-varying visualizations that sustain rendering performance over 70,000,000 triangles per second at interactive refresh rates using 16 compute nodes and 16 rendering nodes.

[1]  Carl Mueller,et al.  The sort-first rendering architecture for high-performance graphics , 1995, I3D '95.

[2]  Thomas A. Funkhouser,et al.  Load balancing for multi-projector rendering systems , 1999, Workshop on Graphics Hardware.

[3]  Massimiliano Fatica,et al.  Stanford Center for Integrated Turbulence Simulations , 2000, Comput. Sci. Eng..

[4]  Thomas A. Funkhouser,et al.  Hybrid sort-first and sort-last parallel rendering with a cluster of PCs , 2000, Workshop on Graphics Hardware.

[5]  Henry Fuchs,et al.  Pixel-planes 5: a heterogeneous multiprocessor graphics system using processor-enhanced memories , 1989, SIGGRAPH.

[6]  John Rohlf,et al.  IRIS performer: a high performance multiprocessing toolkit for real-time 3D graphics , 1994, SIGGRAPH.

[7]  Homan Igehy,et al.  The design of a parallel graphics interface , 1998, SIGGRAPH.

[8]  Pat Hanrahan,et al.  Tracking graphics state for networked rendering , 2000, Workshop on Graphics Hardware.

[9]  Henry Fuchs,et al.  A sorting classification of parallel rendering , 1994, IEEE Computer Graphics and Applications.

[10]  Pat Hanrahan,et al.  Distributed Rendering for Scalable Displays , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[11]  Marc Levoy,et al.  The digital Michelangelo project: 3D scanning of large statues , 2000, SIGGRAPH.

[12]  A. Heirich,et al.  Scalable distributed visualization using off-the-shelf components , 1999, Proceedings 1999 IEEE Parallel Visualization and Graphics Symposium (Cat. No.99EX381).

[13]  Homan Igehy,et al.  Parallel texture caching , 1999, Workshop on Graphics Hardware.

[14]  William J. Blanke The Metabuffer: A Scalable Multiresolution Multidisplay 3-D Graphics System Using Commodity Rendering Engines , 2000 .

[15]  Gordon Stoll,et al.  Lightning-2: a high-performance display subsystem for PC clusters , 2001, SIGGRAPH.

[16]  Thomas Funkhouser,et al.  Sort-First Parallel Rendering with a Cluster of PCs , 2000 .

[17]  Philip D. Heermann Production visualization for the ASCI One TeraFLOPS machine , 1998, Proceedings Visualization '98 (Cat. No.98CB36276).

[18]  Charles L. Seitz,et al.  Myrinet: A Gigabit-per-Second Local Area Network , 1995, IEEE Micro.

[19]  Homan Igehy,et al.  Pomegranate: a fully scalable graphics architecture , 2000, SIGGRAPH.

[20]  William E. Lorensen,et al.  Marching cubes: A high resolution 3D surface construction algorithm , 1987, SIGGRAPH.

[21]  John G. Eyles,et al.  PixelFlow: high-speed rendering using image composition , 1992, SIGGRAPH.

[22]  John S. Montrym,et al.  InfiniteReality: a real-time graphics system , 1997, SIGGRAPH.