DEVELOPED BY EVL @ UIC

Scalable Adaptive Graphics Environment

DOCUMENTATION

QUICKSTART (v2.5)

Old versions:

COMPILATION

1. Install required libraries

You need to install these libraries before installing SAGE:

Also, for other SAGE components you need the following:

2. Modify makefile

Open the Makefile in the "sage/src" directory and set QUANTA_DIR to the QUANTA directory where you installed QUANTA in your machine.

3. Compile

Execute make in the sage directory (NOT sage/src). If you get errors, check include paths and library paths in makefiles. Also check that you have all the required libraries installed. This will compile SAGE source and then two simple OpenGL test applications (GLUT is needed for those).

CONFIGURATION

1. Edit Configuration Files

In order to run SAGE on a single machine you shouldn't have to modify the configuration files. For all other cases some changes are needed.
  1. go to the "sage/bin" directory
  2. fsManager.conf:
    • fsManager: name and IP address of the machine on which FreeSpace Manager runs. Usually the master node of cluster. You can specify two IP addresses here from v1.3. The first IP address will be used for system components (i.e. streaming of pixels) and the second IP address will be used for UI connections (sent to connection manager so it must be a PUBLIC address). If only one IP address is specified, it will be used for both.
    • systemPort: port for SAGE system message channel
    • uiPort: port for SAGE UI message channel
    • trackPort: port for tracking data (for LambdaTable)
    • conManager: the ip address and port number of Connection Manager - Connection manager is a server which manages connections among SAGE UIs, fsManagers and appLaunchers - If you don't want to run your own connection manager, just leave these fields as they are (recommended), then your SAGE will connect to the connection manager on a Starlight machine. To set up your own connection manager look in "sage/ui/README" and "sage/ui/usersServer/README" for details.
    • tileConfiguration: name of tile configuration file (described below)
    • receiverSyncPort: port number of sync connection on displaying side
    • receiverStreamPort: port number used for streaming on displaying side
    • receiverBufSize: size of circular buffers of SAGE Receiver in mb
    • fullscreen: 1=True, 0=False (run display nodes in fullscreen?)
    • winTime: used in animation of SAGE window movement/resizing - how long does it take for a window to move from one position to the other
    • winStep: used in animation of SAGE window movement/resizing - how many steps are used in the animation
  3. stdtile-1.conf:
    • Dimensions: number of columns and rows of tiled display (col, row)
    • Mullions: width(inches) of top, down, left, and right mullions
    • Resolution: screen resolution of each tile
    • PPI: pixels per inch of each tile
    • Machines: number of display nodes which drive tiled display (does not include the master)
    • for each "DisplayNode":
      • Name: name of each display node (not critical)
      • IP: ip address of each display node
      • Monitors: number of tiles which each node drives (xPos, yPos) of each tile (0,0) is the tile at the lower left corner

2. Environment Variables (in .profile,.tcshrc or .bashrc)

SAGE requires the following environment variables to be set (examples are for bash shell):

^

RUNNING SAGE

1. Start SAGE

To start SAGE go to the bin directory and type sage. This will start SageLauncher which will help you set up, start and stop SAGE and all other components. The default setup should work so just press START to run everything. If SAGE was started successfully, your tiled display will turn black. If you get any errors (which will show up in the output tabs of SageLauncher), check the configuration files and your environment variables as described above.

2. Run a test application

3. Shutdown

To close everything just press STOP in the Launcher and this will kill all the components that were initially started and are still running (incl. SAGE).

^

WHERE TO GO FROM HERE

1. Try more applications

Only certain applications are compiled by default (render, atlantis, checker and vnc). There are other applications included with SAGE such as:

2. Write your own application for SAGE

There are two ways to write your own applications or convert existing ones to SAGE:

3. Try the Web UI

SAGE Web UI allows basic control of SAGE from a web browser. Desktop sharing, application moving, resizing and closing is supported by the Web UI. More information.

4. Try direct interaction

Basic manipulation of SAGE windows can be done with a joystick now through SAGE UI. As long as SAGE UI is running and there is an installed joystick on that machine, you can use it to control SAGE windows. There is no setup needed. Just plug in the joystick and start the UI (the UI doesn't even need to be running on the same machine as SAGE).

^