SAGE (Scalable Adaptive Graphics Environment)
I. Introduction
Several unique events gave me the preconditions for exploring this paper. On the first day of class in EV Grad Seminar, we were given a tour of the cavern by Laura Wolf. For me the 55-panel LambdaVision display stood out. I asked whether these devices were available to us and Laura confirmed this. Thus in my proposal to my advisor of my independent study, I chose to research using LambdaVision, and thus came across its main software component, SAGE. This in turn also led me to research the Global Lambda Integrated Facility (referenced also by many other names. I wrote a proposal to use the equipment, and began working immediately on content. The technical challenge of actually using SAGE within the context of a performance art event was considered. Several of the drawbacks seen early on were: the LamndaVision is mostly immobile, therefore the Cavern would have to be used as the performance space (not ideal). My lack of hands-on familiarity with the system made it difficult to envision how the actual performance interaction would work. Once my project was approved, however, I was given the go ahead to actually get some hands on experience with the system. I was given an account on the cluster and a 4-panel display workstation (papyrus) was at my disposal to experiment with SAGE. I was also briefly given access to the LambdaVision demo station (yorda) to experiment with the 55-panel display. The luxury of working with yorda was such that this account on the cluster and its SAGE installation is handled by the Technical staff at EVL, and all of the latest applications are installed and working properly. On my own account on papyrus, I had the pleasure of installing and configuring SAGE 3.0d for my own use.
A. The scope of this document
This paper attempts to shed light on the disparate elements of the SAGE software developed by the Cavern Group at EVL. Noting several built in presumptions and assumptions as part of a complete working methodology, this paper will address the ability to assess SAGE software as an outsider to EVL’s common practices, and High Performance Computing and Communications in general. This paper uses technical, anecdotal, and other research methods.
B. The main presumptions and assumptions of this paper are:
1. there is basic clarity within the SAGE documentation.
2. like most software and associated documentation SAGE goes through sporadic revisions as part of its development cycle.
C. The Goals of this document:
1. to assess the current state of SAGE and draw conclusions from it
2. to provide an outsider’s view of the documentation of SAGE, specifically its correctness and usefulness
3. to add to the knowledgebase of SAGE
II. SAGE @ EVL
A. SAGE is EVL’s answer for the need for a software environment for a cluster-based high-resolution tiled display system. This type of environment can handle high resolution graphics, HD video and audio streams, and volumetric datasets, accessed by multiple users on separate continents using Lambda networks. The computing environment for SAGE consists of several components
1. Hardware
a. high-resolution tiled display; Tiled displays can come in many shapes and sizes. papyrus is a 2×2 display by multiplying th pizes, we can geta count of the total number of pixels.. Yorda is a 5×11 display with a total of 105 megapixels.
b. cluster-based rendering capability; What makes the system viable under this load is the core of the SAGE application. SAGE couples specific sets of tiles to nodes on the cluster, thus enabling distributing the workload.
2. Network
a. ~ 10 gigabit for data onto tiled displays (lambda); Lambda Networks are used to move data from one location (display) to another.
b. SAGE UI can be utilized from a laptop; The SAGE UI is installable separately on a laptop without he undeslying SAGE engine. This enables a user to connect locally to an existing tiled display and manipulate it.
c. see also WEB UI (as of this writing untested by me); THe WEB UI is used for screen sharing. Screensharing is utilies the vnc:// protocol. Separate VNC client and server software is required. THe WEB UI must be installed separately on a laptop actually running SAGE.
3. Software
a. underlying operating system (Mac, Windows, UNIX); regardless of the operating system you use, the correct most up to date version of SAGE must be installed.
b. required libraries to run SAGE; SAGE required the use of preinstalled libraries (see documentations)
1. some available at EVL; Some of the libraries are modified libraries optimized for SAGE use, and are available from EVL.
2. some third party. Other libraries are utilized and may be updated via third parties. Most are open-source.
3. some built in to OSs. Other libraries required for SAGE may be rolled into a pre-existing operating system installation and may be different based on the operating system version.
c. SAGE components (sage libraries, sage UI, etc)
1. most ship with basic package; demo applications and add-ons ship with the basic package.
2. must be configured separately; the main thing SAGE needs to know is your tile display resolution and network IP addresses.
d. applications
1. many of the original applications have been deprecated in favor of newer more robust applications
2. some of the old applications still work
3. newer applications may or may not be available form EVL, instead they are available from third parties.
B. SAGE development began in the 2003-2005 timeframe, but is still being developed (version 3.0e) in November 2008. SAGE builds upon work on on Teravision, and the applications Vol-A-Tile and Juxtaview. The main network component of the software relies upon QUANTA, which uses reliable blast UDP. SAGE mainly acts like a virtual frame buffer. The UI is built around Freespace Manager, a window manager that allows collaborators to manipulate data on the screen. This is now known as the SAGE UI.
C. As of this writing, I am informally involved in Supercomputing ‘08 in Austin Texas, where EVL along with UCSD are sharing a booth demoing SAGE. EVL is also participating in the SC08 Bandwidth Challenge showcasing Global Visualcasting - Collaboration in Ultra-Resolution Work Environments. The yorda machine used for EVL demos is being staffed by EVLers. There is an HD camera hooked up to stream EVL/Chicago live to the show floor. Similarly, the yorda machine is being utilized locally and remotely to help visualize the Supercomputing ‘08 demos and the Bandwidth challenge.
III. SAGE Documentation & Support
A brief overview of the sage website shows that is serves as the main point of entry for current and potential SAGE users. The site is divided into PR, documentation and download sections, many of which have old but not critical information. Features include a general description, available applications, developer list, links to papers, download, documentation, community of lambda-based users, related projects, photo and video gallery, funding and contact information. While the whole website serves as a basic overview, the documentation section breaks down more specifically. The main lessons learned from the SAGE documentation is that while the installation instructions are a version (or two) old, much of what is written there is still relevant. Installing the 2.5 way may introduce some redundancy, but is otherwise fairly solid in scope. However, given the nature of complexity, it would make sense to update these instructions. On the cavern forum, SAGE support is the only set of active threads, and questions are answered by Ratko Jagodic and Luc Renambot within a day or two (or sooner) of their posting. The ReadMe files that ship with the most current versions of the software (3.0e) have not been updated. An add-on to the Quickstart page, the SAGE Web UI sheds light on some very useful features os SAGE for desktop sharing, but are unevenly documented and could be foregrounded.
A. SAGE Website resources
1. Documentation section
a. Quickstart (v 2.5); This section is out of date. Notably however, this is where the WEB UI information appears. Information for fsManager.conf and stdtile-1.conf files remain unchanged.
b. FAQs; The FAQ section probably should be updated with information from the Cavern forum.
c. Full Documentation; discussion of some of the technical issues, while instructive, are deprecated because they simply “work” in the background
d. pdf; same as Full Documentation
2. Cavern forum; this area has the most up-to-date information. The organization of the document is difficult to follow. Some of the questions and answers refer to versions 2.5 and earlier, specific applications and libraries, and specific hardware and network environments.
3. SAGE papers; many papers are very useful and delineate the usefulness and technical issues and environment of SAGE, and specifically complement the technical documentation of SAGE. See the bibliography. Of particular importance are Jeong, B., Collaborative Visualization Architecture in Scalable Adaptive Graphics Environment, and Renambot, L., Jeong, B., Hur, H., Johnson, A., Leigh, J., Enabling High Resolution Collaborative Visualization in Display Rich Virtual Organizations.
4. related papers; Global Lambda Visualization Facility (GLVF), The OptIPuter Project, LambdaVision sections of the SAGE website and their associated documentation.
B. SAGE Web UI page
C. ReadMe Files (from available downloads)
1. SAGE app
Readme.txt: README file for SAGE v2.5 written by Byungil(Brent) Jeong, Ratko Jagodic NEEDS TO BE CHANGED FOR SAGE 3!!! (Ratko, 07/12/04)
2. SAGE UI
3. other packages
D. Discussions with Lance Long, Jason Leigh, Robert Kooima, Ratko Jagodic, Maxine Brown, Luc Renambot concerning SAGE
IV. Conclusions
A. Viability of Artists Using SAGE
B. Recommendations for SAGE documentation
V. Selected Bibliography
Renambot, L., Rao, A., Singh, R., Jeong, B., Krishnaprasad, N., Vishwanath, V., Chandrasekhar, V., Schwarz, N., Spale, A., Zhang, C., Goldman, G., Leigh, J., Johnson, A. SAGE: the Scalable Adaptive Graphics Environment. Proceedings of WACE 2004, , 09/23/2004 - 09/24/2004.
Vishwanath, V., Leigh, J., Shimizu, T., Nam, S., Renambot, L., Takahashi, H., Takizawa, M., Kamatani, O. The Rails Toolkit (RTK) - Enabling End-System Topology-Aware High End Computing. The 4th IEEE International Conference on e-Science, 12/07/2008 - 12/12/2008.
Renambot, L., Jeong, B., Hur, H., Johnson, A., Leigh, J. Enabling High Resolution Collaborative Visualization in Display Rich Virtual Organizations. Future Generation Computer Systems 25 (2009), Elsevier B.V., doi:10.1016/j.future.2008.07.004, 07/24/2008 - 07/24/2008.
Leigh, J., Brown, M., Johnson, A., Renambot, L., Jones, S., Moher, T. Global Cyber-Commons: Collaborative, Instructional Environments for the Virtual School of Computational Science and Engineering. Virtual School of Computational Science & Engineering, Great Lakes Consortium for Petascale Computation, 06/28/2008 - 06/28/2008.
J. Leigh, M. D. Brown. Cyber-Commons: Merging Real and Virtual Worlds. Communications of the ACM, 01/01/2008 - 01/31/2008.
Leigh, J., Johnson, A., Renambot, L., DeFanti, T., Brown, M., Jeong, B., Jagodic, R., Krumbholz, C., Svistula, D., Hur, H., Kooima, R., Peterka, T., Ge, J., Falk, C. Emerging from the CAVE: Collaboration in Ultra High Resolution Environments. Proceedings of the First International Symposium on Universal Communication, Kyoto, Japan, 06/14/2007 - 06/15/2007.
Jeong, B. Collaborative Visualization Architecture in Scalable Adaptive Graphics Environment. IBM Visualization and Graphics Student Symposium, TJ Watson Research - Hawthorne and Yorktown, New York, 04/26/2007 - 04/27/2007.