GRID superscalar Monitor
The GRID superscalar monitor (GSM) visualizes the task dependence graph (TDG) at runtime, so the user can study the structure of his parallel application and track the progress of execution. The GSM's visualization of the TDG will be referred to as the GSM graph.
GSM implementation
The GSM is implemented using UDrawGraph (UDG), an interactive graph visualization package from the University of Bremen. Just as the Grid Superscalar (GS), the GSM assumes that the Grid consists of a master machine, and worker machines. Additionally, for monitoring purposes, we identify another machine, which doesn't belong to either of the aforementioned groups, the monitoring machine. By design, the GSM should be run in the monitoring machine, as not to disturb or influence the Grid computation. Although this is not mandatory: the GSM can also be located on the master or on one of the worker machines, if desired.
The GSM sets up an SSH-tunnel between the master machine, and the monitoring machine. Given that the master machine and the monitoring machine or not one and the same. SSH-tunneling to and from the same machine would be just plain silly. Via that SSH-tunnel (and if not, directly), the GS master library sends over updates to the GSM. The GSM buffers and processes these messages, and paints the GSM graph via UDG.
GSM window
The GSM window (figure 1) consists of a control area and a GSM graph area.The control area is located in the extreme left part of the GSM window. There's an exit-button (X). Clicking the double-bar-button once pauses the generation of the GSM graph, clicking it again resumes the generation. The buttons labeled AUTO-something function in the same way. The first click starts the automatic graph improvement feature, resp. the automatic resize feature, the second click turns it off again. Beware of the automatic graph improvement feature. When generating big GSM graphs, this feature may severely slow down the GSM. Another useful button is the magnifying-glass-button, which allows you to scale the graph to your likings. The function of the rest of the buttons should be obvious.

Figure 1: Grid Superscalar Monitor window
The task dependence graph in the GSM graph area.The colour of the nodes is an indication of the current state of the task, as well as of the machine that computes the task. Nodes at least start off white, and pass on to grey. These two states represent a state with unresolved dependencies, and a state with all dependencies resolved, but not yet scheduled to run on a machine, respectively. In both cases, there's not an association to a machine yet.
The rest of the state sequence depends on the specific version of the GS on your machine. Although it's safe to assume that the state evolves from a light shade, to a darker state, as the task nears the end of its computation.
Tasks are identified by an integer that denotes the order in which these tasks are created by the user program. State, task number, and machine (if any) of a task can be found out by hoovering over the node in question. This should open a popup window.




