The OpenGL/MPI System

In the OpenGL/MPI approach, each computer in the network processes the entire "world" and displays either the entire "world" or a portion of the world. The synchronization process involves: a master timer callback followed by am update of the world data, followed by a "frame update" message, followed by an MPI "barrier", followed by a return to OpenGL.

This approach requires very little communication and most of the processing time is devoted to rendering. As a reuslt, the video cards are the main bottleneck.

The Xavier On Rails (XOR) System

Xavier On Rails (XOR) is an object-oriented visualization and animation system that can be used either on an individual computer or network of computers. In XOR, each object is responsible for itself. That is, each object controls its own state and its own rendering.

When run on a network of computers, XOR does not provide support for strong synchronization. This has not proven to be a problem for most applications.

The Moxaic System

Moxaic is a distributed, ultra-high resolution visualization system written in Java. It was designed to allow students in introductory programming courses to write graphics applications that would run on a network if computers.

A Moxaic application is virtually indistinguishable from an ordinary graphical application written in Java except that the rendering engine has access to a very large display space. The Moxaic system partitions the graphics calls and distributes them to the appropriate machines.

The Video Presentation System

In the Video Presentation System there is a master node that transmits frames of video (using UDP) to the presentation nodes. Since the system uses GB ethernet, synchronzation is not a problem.