Mailing List
For SAGE questions, comments or suggestions, please subscribe to the SAGE User Group Mailing List:
=========================================== Only subscribers can post messages. Subscription need to be approved to limit spam. The address to post is sage_users@uic.edu To subscribe, send an email to: listserv@listserv.uic.edu with message body: subscribe sage_users firstName LastName i.e. subscribe sage_users luc renambot List archives available at: http://listserv.uic.edu/archives/sage_users.html ===========================================
QUICKSTART
COMPILATION
1. Install required libraries
You need to install these libraries before installing SAGE:
- Quanta0.4 (www.evl.uic.edu/cavern/quanta)
- SDL-1.2.8 or later
- readline (runtime and development packages)
- freetype 2
2. Modify makefile
Open the Makefile in the "sage/src" directory and set QUANTA_DIR to theQUANTA directory where you installed QUANTA in your machine.
3. Compile
Execute make in the sage directory (NOT sage/src). If youget errors, check include paths and library paths in makefiles. Also check that you have all the required libraries installed. This will compile frenchwindows library, then the 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 configurationfiles. For all other cases some changes are needed.- go to the "sage/bin" directory
- fsManager.conf:
- fsManager:name and IP address of the machine on which FreeSpace Manager runs. Usually the master node of cluster. You can specifytwo IP addresses here from v1.3. The first IP address will be used forsystem components (SAIL, SAGE Receiver) and the second IP address willbe used for UI connections (sent to connection manager so it must be aPUBLIC address). If only one IPaddress 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:theip address and port number of Connection Manager - Connectionmanager is a server which manages connections among SAGE UIs andfsManagers - If you don't want to run your own connection manager, justleave these fields as they are, then your SAGE will connect to theconnection manager on an evl machine. To setup your own connectionmanager look in "sage/ui/README" and "sage/ui/usersServer/README" fordetails.
- sage.conf:
- appList: Thelist of executable applications. Each application can have multipleexecution configurations which consist of:
- nodeNum: number of nodeson which an app runs
- Init posX posY sizeX sizeY: initial position andsize of app window in pixels. This line is optional.
- exec ip command:set an ip address of rendering machine and command to execute an app
- nwProtocol: TCP - tvTcpModule.so / UDP - tvUdpModule.so
- tileConfiguration: name of tile configuration file (described below under 4.)
- receiverBaseSyncPort: port number of sync connection on displaying side
- receiverBufNum: number of buffers in circular buffers of SAGE Receiver
- sailBaseStreamPort: base port number of streaming connections
- sailBaseSyncPort: port number of sync connection on rendering side
- 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
- tileNodes.list:
- list the ip addresses of allyour cluster nodes including the master
2. Environment Variables (in .profile,.tcshrc or .bashrc)
SAGE requires the following environment variables to be set (examples are for bash shell):
- SAGE_DIRECTORY to the directory_where_you_installed_SAGE, for example:
- export SAGE_DIRECTORY=/home/username/sage
- PATH needs to include $SAGE_DIRECTORY/bin, for example:
- export PATH=$SAGE_DIRECTORY/bin:$PATH
- LD_LIBRARY_PATH needs to include $SAGE_DIRECTORY/lib, for example:
- export LD_LIBRARY_PATH=$SAGE_DIRECTORY/lib:$LD_LIBRARY_PATH
RUNNING SAGE
1. Start SAGE
To start SAGE go to the bin directory and execute fsManager.If SAGE was started successfully, your tiled display will turn black.However, if you get any errors, check the configuration files and yourenvironment variables as described above.
2. Run test applications from a console
In "sage/bin" directory:
- Open a terminal and execute fsConsole
- ? or help command gives you short description for eachcommand
- type: exec render 1 - a simple app renderruns on tiled display
- type: move 0 1000 0 - moves the app window
- type: execatlantis 1 512 512 - another simple app atlantis runs
- type: resize 1 500 2000 100 1500 - resize the window of atlantis
3. Run SAGE GUI
In order to run SAGE GUI you need the following:
- python 2.3 or higher (www.python.org)
- wxPython 2.6.1 or higher (www.wxpython.org)
- numarray 1.1 or higher (numarray)
To start SAGE GUI go to sage/ui and type python sageui.py.A dialog should pop-up with a list of SAGE machines. If your SAGE isrunning correctly, you will see its entry in there with a green circle.Select that entry, change your username and click Connect.From thatpoint on interaction is similar to popular desktop environments(dragging windows, resizing them, closing them...). If your SAGE isconnecting to your own connection manager and not EVL's, start the GUIby specifying the IP where your connection manager is running: python sageui.py 123.123.123.123
3. Shutdown SAGE
There are three ways to shutdown SAGE (all the applications must be closed beforehand):
- you can shutdown SAGE using fsConsole command shutdown
- you can shutdown SAGE from the GUI: File->Shutdown SAGE (the preferred way)
- if neither of those work, execute this script from sage/bin: KILL_ALL