RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report

UK e-Science Technical Report Series
ISSN 1751-5971
RAVE – Resource Aware Visualisation Environment
Middleware Evaluation Report
Grid Engineering Task Force (ETF)
Anthony Stell, National e-Science Centre
Steven Young, Oxford e-Science Centre
Matthew Dovey, Oxford e-Science Centre
03-Mar-2006
Abstract:
This report provides an evaluation of the Resource Aware Visualisation Environment
(RAVE) as developed by the Welsh e-Science Centre (WeSC) in Cardiff. It reports on a series
of operations carried out by members of the Grid Engineering Task Force (ETF) which
included the process of installation, deployment and use of RAVE services. The report is
written with a view to finding out the suitability of RAVE in facilitating a national
visualisation service.
Criteria reported on for the purposes of this evaluation include: installation and deployment
for clients, installation and deployment for servers, documentation, ease of use, functionality
and future scalability. All technical issues encountered by the evaluators have been
documented.
The RAVE evaluation is part of a series of middleware evaluations conducted by the ETF. It
stands alone and does not compare the application to other visualisation packages.
UK e-Science Technical Report Series
Report UKeS-2006-01
Available from http://www.nesc.ac.uk/technical_papers/UKeS-2006-01.pdf
Copyright © 2006 The University of Edinburgh. All rights reserved.
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
Executive Summary
This document provides a report of the UK Engineering Task Force (ETF) evaluation for the
Resource Aware Visualisation Environment (RAVE) application, as part of the series of ETF
evaluations of Grid middleware solutions. The evaluation was conducted to report on the
suitability of the RAVE software in the context of setting up a National Visualisation Service
but does not compare RAVE against other visualisation applications. The period of the
evaluation was from May to December 2005.
The evaluation proceeded by setting up and running thin and active clients on machines in
Cardiff, Glasgow and Oxford, then proceeding to set up RAVE servers and publishing to the
Cardiff machine server pool.
The evaluation group found the following positive features of the application:
• RAVE software provides useful features for collaborative visualisation sessions –
such as tracking, customisable markers and object selection.
• RAVE software can be installed on a variety of platforms including Windows,
various Linux builds and a PDA operating system.
• RAVE documentation was clear and easy to follow, though requiring some
updates and a larger trouble-shooting section.
• RAVE software integrates with Access Grid and GridSphere technologies
allowing wider access to the resources provided.
In terms of negative features, two major shortcomings that were found were the need for
greater robustness within the application and the need for any kind of security
implementation. The product is still in development and the RAVE team are aware of the
need for these features.
The software could provide a possible solution to the need for a visualisation service with
nationwide coverage but would require more development time and effort before being in a
state where end-users with little experience of visualisation or Web services can run it “out of
the box”.
The RAVE project is currently funded until 1st April 2006.
2
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
1 Introduction
The ETF is conducting a series of Grid middleware evaluations that review the suitability of
various software packages for their use within a national UK e-infrastructure.
As part of this initiative, an evaluation of the RAVE (Resource Aware Visualisation
Environment) software [1] is being conducted between the centres of the Welsh e-Science
Centre (WeSC), the National e-Science Centre (NeSC) and the Oxford e-Science Centre
(OeSC).
RAVE is a collaborative visualisation tool that allows users to view data sets together using
distributed and potentially disparate resources. The access to visualisations is provided by the
software in the form of centrally administered Web services. These allow either active clients
(those that consume the central data service but do their own local rendering of that data) or
thin clients (where both the central data service and render services are consumed).
Other features of the software include the abilities to interact within the visualisation with
other users, to jump to each other’s camera position, to track each other’s camera as it moves
within the data set and to select and highlight individual objects within the visualisation.
This evaluation will concentrate on setting up clients that report to the main RAVE server in
Cardiff then it will progress on to setting up servers at other locations. Thus will the strengths
and weaknesses of the software be tested, reviewing available documentation and testing
robustness against different versions of underlying base components.
2 General Information
2.1 The Provider
RAVE is a project being developed, maintained and supported at the Welsh e-Science Centre
(WeSC). The principal investigators are Prof. D Walker and Dr I. Grimstead. The RAVE
project is currently funded until 1st April 2006. The software is still largely in development
and as such hasn't had an official release. As a result, the install base is therefore currently
restricted to test deployments at Cardiff/WeSC.
2.2 Licensing
RAVE is covered by a software license, reproduced in Appendix A.1. The license was
specifically written for the ETF evaluators, initially granted for a period of three months. The
option of an extension was made available and this was invoked until the end of December
2005.
At the present time, details of what the actual software licensing will be when the finished
product is made available are not known. How the code will be made available is currently
not known either and will depend on how WeSC/Cardiff University perceives RAVE to be
best exploited upon completion. If commercial opportunities exist WeSC and Cardiff
Computer Science department would retain intellectual property rights. Otherwise it could
become open source.
2.3 Supported Platforms
RAVE has been tested, by the developers, on the following platforms: SGI IRIX, SGI Altix,
Sun Solaris, Microsoft Windows XP, 2000 and Linux (IA64, AMD64, i386 and embedded)
3
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
[1]. The software is implemented using Java coded Web services to provide data and render
services, with local data rendering being implemented using the Java3D infrastructure. Thin
clients are additionally implemented in C++ for the purposes of supporting systems where
Java implementations are incomplete or too slow.
For the purposes of this evaluation, RAVE was tested, by the evaluators, on Windows XP,
two variants of RedHat Linux and a Zaurus PDA operating system. The Java Development
Kit (JDK) used throughout the evaluation was version 1.4.2 and the Java3D package used was
version 1.3.2.
It should be noted that the use of Web services enables RAVE to be implemented in any
language, the abstraction hiding any underlying specific implementation or OS [9].
2.4 Support
Under the terms of the license agreement detailed in Appendix A.1, no support or training is
currently provided by WeSC.
There is also currently no online or commercial support for RAVE, but this may change once
full-scale distribution of the software is undertaken. The documentation used by the
evaluation team [2] may be available upon request to the WeSC team.
2.5 Context
Other visualisation projects are currently being undertaken that cover a similar domain as that
by RAVE, that of collaborative visualisation applications that meet the real-time, highthroughput needs of scientists using such tools. They do not yet have end-line “products”
available for evaluation but should be considered in the wider context of visualisation and
would be the next logical step in ETF evaluations, looking towards the NVS. This section
gives a very brief overview of two of the further developed projects:
•
gViz [20] – This project has developed an extension and binding between the already
established products of the IRIS Explorer [22] from the Numerical Algorithms Group
(NAG) and the pV3 [23] from Massachusetts Institute of Technology (MIT). The
gViz library binds the visualisation on the local desktop to one over the Grid and a
descriptive XML language has been developed to allow piping of data/data formats
between nodes.
•
eViz [21] – This deals with issues such as the data flow within an High Performance
Visualisation (HPV) environment, the investigation of commonly used protocols
governing HPV interactions, the investigation of the best type of decision metric
when managing data flow and job scheduling within HPV and finally, the
development of a software tool that covers all these aspects.
The following three are other projects that the RAVE software author thought were also
relevant to this domain. Information on their content is currently limited:
•
E-Demand [23] – This project focuses on stereo viewing, implementing a work-flow
with each module represented as a Web service.
•
COVISE [24] – This is a commercial visualisation product that supports distributed
users.
4
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
•
Supervise [25] – This is a visualisation tool under development at the Simulation and
Visualisation Research Group at Hull University.
3 Systems Management
3.1 Documentation for System Managers
Documentation provided was in the form of a user guide [2], in PDF format, for installing
thin and active clients and for installing local server deployments of the RAVE software. A
quick-start guide was not provided.
3.2 Server Deployment
Figure 1: The overall RAVE architecture
The servers available at WeSC are listed on a UDDI registry accessed by a GUI provided
upon startup of the software. A list of machines available for hosting data and render services
are shown, and the process of instantiating services upon these hosts is achieved through a
series of simple text-entry and button-click processes.
A mechanism exists that allows the RAVE services to be deployed into a local Tomcat
container using the Axis Web services framework. When Tomcat is started the set of
operations associated with both data and render services is exposed.
Currently, the only way of accessing these is to then make the local Tomcat installation
available to the pool of machines in WeSC. This is done by opening the relevant ports on the
both the local and remote firewalls and informing the WeSC administrator of the hostname
and IP address of the machine in question.
The ideal model would be to automate this process but this requires re-engineering of the
underlying UDDI registry code. See the “Distributed Management” (3.6) section for more
details on this issue.
5
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
It has been noted that future development would move in the direction of allowing other
centres to set up their own RAVE pools. There are place-holding pages within the
Axis/RAVE set-up that suggest there is opportunity for development here.
As a result of this evaluation a machine has been made available at NeSC in Glasgow,
providing a data server resource. There are also data/render services set up on an SGI Prism
machine at Manchester University (independent of this evaluation).
3.3 Client Deployment
The installation and activation of thin clients is the simplest and most straightforward
implementation of the RAVE software. The only pre-requisite of the local machine is to have
an up to date version of the Java Development Kit [3], and a copy of the RAVE installation
JAR file (available from WeSC after signature of the license agreement).
Active clients require more in the way of supporting infrastructure and are therefore more
vulnerable to version instability. A functioning version of Java3D [4] is required to provide
the ability of local rendering. However, in tests run so far the functionality of the feature has
been subject to the Java3D version being compatible with the graphics card of the local
machine.
Two versions were available for download, with only the development version from [5]
providing the functionality needed for running the software on the architecture at NeSC.
3.4 Account Management
There is no account management implemented at present. Lists of services instantiated can be
viewed through the management GUI. However, there are no restrictions on who can
instantiate what on any given machine at any given time. This also has ramifications in the
security aspects of RAVE – see the “Security” section (4.6).
3.5 Reliability
At its current stage of development (beta testing), the application as a whole operates within
reasonable tolerance bounds and provides the functionality that it claims. However, there are
still several rough edges that need stabilised before it can be considered for production use.
The most notable issues with reliability are those of a cross-platform (more specifically crossarchitecture) nature. Render services require Java3D support which is hardware-dependent on
the local machine. This has been tested to work on Sun Solaris, SGI Prism, Linux and MS
Windows. However, there are driver issues – NVidia cards appear to be the most reliable,
whilst ATI and Intel cards have issues communicating with the OpenGL driver.
Spikes of high CPU usage were noted during testing, which would eventually drop off again.
However, this made running software alongside the application difficult (such as the VoIP
backup channels – see appendix A.3). The issues associated with these spikes were reported
to the RAVE team but the causes were never properly identified.
Other reliability issues include the occasional freezing of the management GUI upon loading,
the crashing of the avatar during visualisation and the slow-down of performance with
increase of user numbers.
6
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
3.6 Distributed Management
In terms of what can be described as a “Grid” in this context, a pool of server machines exist
in Cardiff from which the data and render services can be instantiated and used by remote
machines.
To support this pool, Jakarta Tomcat [6] and Apache Ant [7] are used. The software author
has an Ant build script that copies and re-launches the latest JAR file. There is also an
automated version release system that combines these tools to distribute the software to
licensed remote users [9].
To scale this pool of machines up to a higher number, other hosts can only be added by
contacting the author with the IP address/hostname and port of the relevant Tomcat servers of
the local installations.
Ideally, this process could be semi-automated with the minimum of input by system
administrators at either end of the deployment process. Progress towards this model has been
made using the tools available with UDDI, however there is an inconsistency in the
implementation of the access control within UDDI deployment process, which hampers this
automation.
In UDDI, services implementing a particular API, can be described by assigning them to a
particular technical model (tModel). A suitable tModel for RAVE has been created. However,
whereas the correct method within UDDI would be to search for all services in the UDDI
registry implementing the RAVE tModel, the current RAVE software currently only looks for
services implementing the RAVE tModel belonging to a single Business Entity stored in the
UDDI registry. This was due to a mis-assumption that anyone could publish to a given
Business (the UDDI security model is that only the owner of the Business Entity in the
registry can create services belonging to that business).
Until the ability to locate all RAVE tModel services in a registry is implemented, an
independent, automatic UDDI based deployment process, will not be possible [9]. Testing
was done using the jUDDI and the Microsoft test registry [12]; there is no reason to believe
that RAVE will not work (proviso the caveat above) with the OMII Grimoires UDDI registry
[31] or any other UDDI registry meeting the UDDI standard.
It should be noted that the Microsoft UDDI Test Registry has been taken off-line as of
January 12th 2006.
3.7 External Services
Within RAVE itself, there was an option to import external data-sets but this was dropped
from the software functionality due to the overhead of implementation issues being deemed
too great to justify the usefulness of the function.
An external interface has been developed for the GECEM project [8] that consists of
rendering the RAVE management options within the context of a GridSphere [9] portal.
Integration of RAVE with Access Grid has also been achieved, again making use of an
external interface. See the section on “Developer Experience” (5) for more details on these.
3.8 Scalability
7
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
The paradigm of the application is that datasets are visualised in a collaborative environment,
so scalability is key to its successful operation. So far the system has been successfully tested
with one, two and three users looking at the same visualisation. The methods and
infrastructure necessary to scale collaborations up to higher numbers of users appear to be in
place so, in this regard, and based upon this limited number of users, the application appears
to be scalable.
However, performance limitation must also be considered. Signs of instability were apparent
when the three-user test was being performed – such as fatal exits of the GUI. There were
also usability issues (such as the screen freezing of particular users and bandwidth capability
reduction) that only appeared when the multi-user test was taking place.
It should be noted that scalability in terms of running the software over a variety of bandwidth
and locations, was well accounted for. There was strong connectivity when a three-way
collaboration was conducted between the LANs in Glasgow and Oxford and an ADSL
connection being used by the software author.
4 User Experience
4.1 User Documentation
Part of the documentation released after signature of the license is a user guide [2] that walks
the user through the specific steps needed for setting up of client and server installations.
There is no separate specific user guide for post-installation operation.
The Java versioning issues that have been raised means that this document does require
updating and will continue to do so until a stable and specific API of the supporting
infrastructure has been definitively chosen for the official release.
4.2 Joining the Grid
A collaborative visualisation is joined by either creating a render service and a thin client or
an active client that makes use of the same data service as the other users. The machine name
and the data service instance is the information that must be shared between the various users
before collaboration can take place. As described in previous sections this process is straightforward if the necessary infrastructure is already in place.
To “join the grid” in terms of adding resources to the underlying infrastructure currently
requires registering any Tomcat servers that have the RAVE services deployed, with the
WeSC machine pool. By following the instructions in the documentation, opening the firewall
connections necessary for communication and contacting the WeSC administrator this is also
a straight-forward process.
However, the model that would be needed for the software to work in a wider environment
will be a semi-automated process using the UDDI registry (already mentioned in section 3.6).
There is no security access control implemented in RAVE so there is no mechanism for
exchanging authentication or authorisation tokens. Again, this is an aspect that requires
immediate addressing.
4.3 Legacy Application Integration
Legacy data that it may be desirable to visualise must follow a specific format before it can be
used with RAVE. The formats included can be found in Appendix A.2.
8
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
One issue here is that RAVE does not support textured formats. However this is a design
decision due to the large number of features that this would necessarily introduce. If demand
was high enough this could be introduced [9].
Two of the data-sets supported by RAVE – Virtual Reality Modelling Language (VRML) [4]
and Visualisation Toolkit (VTK) [13] – are popular as export formats and extra functionality
could be introduced into RAVE to import new data-types, again if demand was high enough.
In terms of version changes, as the application is isolated in its execution, the context of
migrating legacy data or executables will not be an issue until two or three production
versions of the software have been produced and widely distributed.
4.4 Migration between platforms
The cross-platform nature of RAVE means that any migration of the application between
platforms is relatively straightforward. Successful installation and execution of the application
has been performed by the evaluators on Windows and Linux machines. Similar tests were
performed on a Zaurus PDA OS but these were ultimately unsuccessful in running either thin
or active clients.
RAVE uses the basic Web services paradigm with remote function calls. It does not
implement any of the more complex WS specification types (e.g. the Web Services Resource
Framework, WSRF) [9].
4.5 Usability
In this context “usable” constitutes an interface that is intuitive to use, and provides an easy
way of navigating around the collaboration and the service creation interface.
The interfaces that RAVE provided were good in this regard. After reading the user guide, the
management interface was laid out in a logical manner and the procedure of setting up render
and data services, followed by avatar creation, was easy to complete.
The avatar itself also had an intuitive interface, with the operations (listed in section 4.5.2)
being easy to understand when the user was presented with the visualisation.
4.5.1 Basic setup
Upon start-up of the RAVE application, a management GUI is presented that is split into
three sections:
9
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
Figure 2: RAVE Management GUI
The top section allows the user to specify a name, a description and what machine to run the
data service on. The middle section does exactly the same but for the render service. The
bottom section allows the user to specify whether they would like to run an active client or a
thin client and what size the avatar is to be. Finally the user clicks on the “Create
Visualisation Client” button and the visualisation avatar appears as specified.
The management GUI itself is easy to navigate and is easy to use once familiar. However, it
was originally built for testing the RAVE software and as such, has some faults that are still
to be remedied:
The main criticism is a lack of robustness, though this can perhaps be attributed to underlying
application issues rather than the GUI itself. While it works most of the time, it is still
unpredictable for a significant number of tries. The function of populating the UDDI entries
does not always render cleanly and must be restarted.
Similarly, the “Refresh” buttons on both the data and render services can sometimes cause the
operation of the GUI to slow down significantly. Finally, it also seems to be a problem that if
difficulties occur in the rendering of the avatar, this can cause the GUI to exit fatally. The
source of this issue is unclear.
These problems have all been reported to the RAVE team in the course of the evaluation.
There is no automated mechanism for tracking the progress of these issues so the RAVE team
need to be contacted directly.
10
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
4.5.2 Supported operations
The following operations are available when the avatar is rendered and the client is taking
part in a visualisation:
•
•
•
•
•
•
•
•
•
•
Drive camera
Move camera
Rotate camera
Track other camera
Jump to camera’s position
Fly to camera’s position
Go to home position
Move object
Rotate object
Set/Drop marker
The operations that make RAVE distinct from other visualisation software are those involving
the interaction between users. The ability to jump to, track and fly to the positions of the other
cameras gives the visualisation a dynamic and interactive aspect.
Objects can be selected and indicated by users to highlight features of interest to the other
members of the visualisation. This is done by a “pulsing” feature of a selected object and a
unique numerical reference for each object in the data-set.
The object naming-scheme is not standard and the objects are not obviously delineated in
each set. However, the set/drop marker feature compensates this to some degree – this allows
a text parameter to be set that can be “dropped” and made visible to all users.
An important new feature is the integration of RAVE with Access Grid [10] technology. The
creation of an “AG client” on a given render service can be achieved by providing the VIC
address/port and unicast/multicast setting [9]. The output appears as a regular window in the
VIC management system and as such, is “view-only” output that must be controlled from
another RAVE client connected to the same session.
Since the beginning of this evaluation, the evaluators have provided feedback to the author to
help improve the usability and HCI aspects of the software. As such the following “wish-list”
was provided and implemented:
•
•
•
Co-ordinate references. This did not exist originally but now there are readouts at the
bottom, providing orientation in the x, y and z axes.
Reset button. A user can move objects and distort the visualisation. The reset button
was required so that a “Home” configuration could be returned to if required.
Object selection. Originally the object selected did not look any different visually.
With the current operation, the object now “pulses” so that it is obvious what has
been selected. This is primarily useful for the user doing the selecting, as previously it
was easy to get confused as to which object had been selected. However, it also helps
direct other users to the object of interest.
A suggestion has been noted that some kind of VoIP integration would be very useful in the
RAVE interface to provide a back-up channel for communication. This was investigated, with
the results detailed in appendix A.3.
11
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
4.5.3 Data-sets
There are only a limited number of data-sets that can be visualised using RAVE, listed in
Appendix A.2. The data-sets used for testing were primarily those residing in the WeSC test
directories – most useful examples were artistic graphic representations (e.g. a rendering of a
galleon, a skeletal hand representation, a cartoon character) but for demonstration purposes a
protein structure for the Diffusion Tensor Imaging [19] project at WeSC was used.
Some test data-sets from the Bio-Informatics department at Glasgow University were sourced
but these turned out to have too complex a polygonal structure, with too many textures within
the format - requiring support that RAVE does not provide.
4.6 Security
This is a facet of the software that requires immediate attention before it can be considered for
production use. Services that are provided on the WeSC UDDI registry are available for
anyone to start or, critically, shut down. So no service is secure from either accidental or
malicious attempts at disruption.
4.7 Verification
The methods and messages provided for verification are adequate for debugging so far, but
there are some errors thrown that could be clearer. The two methods of message delivery are
through dialogue boxes of the application itself and exceptions thrown in the terminal window
from which the application has been launched.
Improvements to be made here are that the dialogue boxes need to be more verbose in
instructing the user as to what problem has occurred. Current methodology is to report the
error back to the application developer who “knows what it means”. While this is sufficient
for the purposes of this evaluation it would not be acceptable on a production release.
Exceptions thrown in the terminal window tend to be opaque, with, for instance, the Java
RMI (Remote Method Invocation) exception being thrown generically, the source of which
could be several different errors.
4.7.1 Technical issues
This section outlines continuing problems that occur with the software that have been relayed
to the author and are being addressed.
•
•
The visualisation client freezes on occasion and it has been noted that this occurs
more often when more than one user is looking at the same data-set. When this
happens it causes major disruption, as the user that is frozen has no control over their
avatar and must shut down completely. It seems to have a knock-on effect of making
the management GUI unstable and if the same data-set is then resumed later on, the
avatars are left from the previous visualisation. The source of this error is being
investigated.
Originally, upon start-up of the management GUI, there was an issue with the
software attempting to synchronise with the NTP server at WeSC, which would cause
the application to freeze. The source of the problem was located to be the NTP server
itself which was notoriously unreliable. A workaround was provided by giving the
application a list of NTP servers to synchronise with in case of any failures. However,
12
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
•
in later versions, this problem occasionally recurred though not with the frequency of
before.
As stated previously, high CPU usage caused in running software simultaneously.
This problem was most noticeable when attempting to run VoIP applications to serve
as a backup channel during the collaborations.
4.7.2 Usability issues
Issues that were encountered in this field were an import button that was presented that
allowed for users to import external data-sets of their own creation. However, there were
many issues in formatting the data-set correctly and overcoming security implementations of
protected file-systems when importing. As a result, the button was removed, considered not to
be useful enough to merit the implementation time – as data-sets can be retrieved using other
methods.
Another issue was that the speed of the visualisation can, on occasion, be cumbersome and
unreliable. During the evaluation, smooth operations were achieved from remote sites, but not
always. However, though the operation is regularly smooth and fast while testing in Cardiff it
would appear that issues surrounding network latency and remote invocation of services
hamper the “feel” of the visualisation. The result is an erratic rendering of the data-set.
5 Developer Experience
There is some limited scope for application development to be built upon RAVE. An API has
been developed that allows an existing Java program to be instrumented to use RAVE.
Examples of using this can be found at WeSC with the development of a web portal to RAVE
used by the GECEM project [8].
Figure 3: GECEM portal implementing RAVE and GridSphere – the interface essentially is a
more colourful version of the management GUI, with the same options for data/render
service creation
13
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
The functionality of the RAVE management GUI has been essentially transposed to the
context of a GridSphere [11] portal. With the creation of a user account, data and render
services can be created and an avatar launched as normal. To obtain this user account requires
registering with the WeSC project administrator and this also allows a minimal level of
security to be applied.
The same restrictions apply for local rendering as applied when not using the portal i.e. the
correct version of Java3D must be present in the local JDK installation. However, this
provides a centralised way of accessing the RAVE application across the web rather than
through the use of locally installed software.
Figure 4: A RAVE avatar rendered on the AG VIC screen, controlled by a separate avatar.
Development opportunity also exists with the RAVE interface that has been created for
integration with the Access Grid system. Both of these examples are tightly-bound
integrations with no externally exposed interface. Therefore, development opportunity is
limited.
6 Conclusions
The RAVE software stack provides a grid infrastructure to enable collaborative visualisations
in real-time. It has features that allow advanced and flexible operations such as the ability to
set markers, selecting specific objects and tracking different users around the visualised
domain.
Its strengths include the fact that it provides a solution that follows the tenets of Grid
technology, with different features of the application having the ability to be distributed
across many machines. Tools exist for adding new resources, which are in the process of
being developed to be automated and dynamic.
Its main weaknesses are its current lack of robustness and need for security. The development
team are aware of these shortcomings and an effort will be made to address these issues given
14
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
time and renewed funding. In conclusion, RAVE provides an innovative solution for
distributed visualisation that could make for a national solution, but would require more
development time and resources.
References
[1] RAVE – http://www.wesc.ac.uk/projects/rave/index.html
[2] RAVE user guide documentation
[3] Java Development Kit (JDK) – http://java.sun.com
[4] Java3D – https://java3d.dev.java.net/
[5] Java3D Development Version – https://www.blackdown.org
[6] Jakarta Tomcat – http://tomcat.apache.org
[7] Apache Ant – http://ant.apache.org
[8] GECEM – http://www.wesc.ac.uk/projectsite/gecem
[9] Personal communication with RAVE author, Dr Grimstead
[10] Access Grid – http://www.accessgrid.org
[11] GridSphere – http://www.gridsphere.org
[12] Microsoft Test UDDI Registry – http://test.uddi.microsoft.com
[13] Visualisation ToolKit – http://www.vtk.org
[14] Xj3D Project – http://www.xj3d.org
[15] OBJ File Format – http://www.eg-models.de/formats/Format_Obj.html
[16] Polygon File Format – http://www.cc.gatech.edu/projects/large_models/ply.html
[17] Martin Connell and Mark Bastin. Diffusion Tensor Imaging (DTI) dataset. Personal
communication, SHEFC Brain Imaging Research Centre for Scotland, 2004.
[18] Ensight Gold –
http://www.ensight.com/pub/NEWEST_RELEASE/ensight76/doc/OnlineHelp/UM-C11.pdf
[19] ETOPO data-sets – http://www.ngdc.noaa.gov/mgg/gdas/gd_designagrid.html
[20] gViz Project (White Rose Grid) – http://www.comp.leeds.ac.uk/vis/gviz/
[21] eViz Project – http://www.eviz.org
[22] NAG IRIS Explorer – http://www.nag.co.uk/Welcome_IEC.asp
[23] e-Demand - http://www.comp.leeds.ac.uk/edemand/index.html
[24] COVISE - http://www.hlrs.de/organization/vis/covise/
[25] Supervise – http://www.dcs.hull.ac.uk/simvis/research/research.htm
[26] Grid Engineering Task Force – http://tyne.dl.ac.uk/ETF/index.shtml
[27] Skype – http://www.skype.com
[28] Skype EULA - http://www.skype.com/company/legal/eula/index.html
[29] OpenPhone - http://www.openh323.org/
[30] GnomeMeeting – http://www.gnomemeeting.org
[31] Grimoires UDDI Registry – http://www.omii.ac.uk/mp/mp_grimoires.jsp
Appendix
A.1 License Agreement
Software Licence for RAVE
IMPORTANT - PLEASE READ CAREFULLY
This is a legal Agreement between you the user of the RAVE Software and Cardiff
University of 30-36 Newport Road, Cardiff CF24 0DE (“Cardiff”).
____________________________________________________________________
A. Cardiff’s School of Computer Science has developed a computer software known as RAVE
(hereinafter called “the Software”); and
B. You (“the Licensee”) wish to use the Software for evaluation purposes, and
C. Cardiff hereby grants a licence to the Licensee for use of the Software under the terms herein.
15
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
1.
Purpose
The purpose of this licence is to permit use of the Software by the Licensee for internal noncommercial evaluation only during the Evaluation Period and in accordance with the
provisions of this Agreement.
The Evaluation Period shall be for <n> months from the date of signature of this Agreement.
2.
Software Licence
Cardiff grants to the Licensee on the following terms a non-exclusive and non-transferable
licence to install and use the Software:
a.
The Licensee shall not copy the Software as delivered other than to create a backup
copy in case of malfunction of the designated computer or network.
b.
The Licensee may use the Software solely for the purposes of undertaking academic
research projects. The licensee agrees not to use the Software for profit-making or
commercial purposes, including consultancy.
c.
Copying of the Software other than as defined in Clause 2.a herein is a breach of this
Agreement.
d.
The Licensee shall not provide, disclose or otherwise make available the Software in
any form to any person other than the Licensee’s students and employees without
Cardiff’s prior written consent.
e.
The Licensee will not attempt to “reverse engineer”, decompile, disassemble or
otherwise derive the source code for the Software except to the extent specifically
permitted under English law. Any such attempt is a breach of this Agreement
entitling Cardiff to legal remedies, including injunctive relief. The Licensee may
modify only those parts of the Software which Cardiff elects to provide in the form
of source code.
f.
The Licensee will not attempt to modify or remove any copyright notices or
proprietary markings from the Software.
3.
Support Services
Cardiff makes no undertaking that it will resolve any reported problem relating to the
Software and will provide no training.
4.
Termination
When the Licensee discontinues use of the Software, the Licensee will return the Software to
Cardiff together with any documentation including all copies of both Software and
documentation unless otherwise agreed with Cardiff. Cardiff shall have the right to terminate
this Agreement forthwith if the Licensee breaches the terms and conditions of this Agreement,
and in such instance the Licensee will return the Software to Cardiff together with any
documentation and all copies of both Software and documentation.
5.
Ownership and Use
a.
All copies of the Software and documentation are Cardiff’s confidential and
proprietary property, and title to them remains in Cardiff. This Agreement and the
Licensee’s use of the Software shall not be deemed to transfer any of Cardiff’s rights
in patents copyrights and trade secrets in the Software to the Licensee. No title to or
ownership of the Software is transferred to the Licensee.
b.
Cardiff shall have the right to terminate the Licensee’s licence and rights granted by
this Agreement, as detailed in Clause 4.
c.
The rights and obligations contained in this Clause 5 shall survive any termination of
this Agreement.
d.
The Licensee shall have no right to duplicate manuals, or to use them, except in
conjunction with its use of the Software.
6.
Reporting
16
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
The Licensee agrees to provide Cardiff with a written evaluation report on its use of the
Software, using a pro forma which will be provided to the Licensee. The Licensee will send
Cardiff a copy of the report within 30 days of the end of the Evaluation Period. The
evaluation report shall not be released to any third party without the consent of Cardiff, such
consent not to be unreasonably withheld.
6.
Exclusion of Warranty and Limitation of Liability
a.
Cardiff makes no warranties, expressed or implied, by operation of law or otherwise,
of any item or service furnished in connection with this Agreement. Cardiff expressly
disclaims all implied warranties or merchantability or fitness for particular purpose.
No representation or other statement, including statements of capacity, suitability for
use or performance of the Software, whether made by Cardiff’s employees or others
will be considered a warranty by Cardiff for any purpose or give rise to any liability
of Cardiff.
b.
To the best of Cardiff’s knowledge the Software will not infringe the proprietary
rights of any third party but Cardiff makes no representations or warranties that the
Software is delivered free of the rightful claims of any third party for infringement of
proprietary rights.
c.
Neither party shall be liable to the other for incidental, consequential, special or
exemplary damages resulting from the use of the Software or caused by any defect,
failure, or malfunction whether the claim for such damages is based upon warranty,
contract, tort, negligence or otherwise.
7.
Assignment
The Licensee may not assign, sub-license, or transfer the licence of the Software. Any
attempt otherwise to sub-license, assign or transfer any of the rights, duties or obligations
under this Agreement is void.
8.
Governing Law
This Agreement shall be subject to the exclusive jurisdiction of the laws of England and
Wales.
The Licensee acknowledges that it has read this Agreement, understands it and agrees to be
bound by its terms and conditions. If the Licensee does not agree to be bound by the terms and
conditions of this Agreement, then Cardiff does not agree to license the Software to the Licensee
and the Licensee should not use or copy the Software.
Appendix
Description of the RAVE Software
RAVE uses 'grid' technology, that makes use of spare capacity in remote machines via a network or
grid, to allow locally sited computers to draw on the resources of computers from as far away as the
US. Spare capacity is used to draw complex datasets and show the results on the local machine. The
system also creates a collaborative environment so multiple users can view the same data at the same
time, as well as interact with each other - for instance, to point out interesting features in the data.
Supplied: Java archive containing the RAVE software, an installation and user manual.
17
RAVE – Resource Aware Visualisation Environment Middleware Evaluation Report
03-Mar-2006
UK e-Science Report UKeS-2006-01
A.2 List of accepted data-set formats
•
•
•
•
•
•
•
•
•
Visualisation ToolKit - VTK (binary or ASCII) [13]
Java 3D (including LightWave3D) [4]
Xj3D Project (including VRML and X3D) [14]
OBJ (Wavefront) [15]
PLY (Polygon file format) [16]
GECEM project specific (ADF converted into ASCII format) [8]
DTI (Diffusion Tensor Imaging – custom ASCII format) [17]
Ensight Gold [18]
ETOPO datasets [19]
A.3 Separate Voice over Internet Protocol (VoIP) channel
Skype [27] was initially tested as a means of communicating over a separate channel between
RAVE collaborators, to allow real-time discussion of the data-sets and to provide a back-up
channel in case of failure of the visualising application.
However, though this was the most useful tool and easy to set up and use, its use has been
prohibited over many university campuses (including Oxford and Glasgow) because of the
“supernode” ability of the software. This is where the software acts as a relay for arbitrary
third-party traffic - there is no way to limit or prevent this and there is no way to detect what
this traffic is carrying.
The Skype license agreement [28] has been amended recently to reflect that this can happen:
4.1 Permission to utilize Your computer. In order to receive the
benefits provided by the Skype Software, You hereby grant permission
for the Skype Software to utilize the processor and bandwidth of Your
computer for the limited purpose of facilitating the communication
between Skype Software users.
Other options investigated were OpenPhone [29], GnomeMeeting [30] and Microsoft
NetMeeting (implemented as standard in XP). However, it was discovered that NetMeeting
was the only option that supported communication that was more than two-way – and this had
to be used between Windows operating systems only. OpenPhone was sporadically unreliable
and GnomeMeeting only worked between Unix operating systems.
For future use of VoIP backup channel tools, technically Skype remains the most useful and
achieves the functionality required for use with visualisation software such as RAVE.
However, its widespread prohibition currently makes it untenable until such time as this issue
is resolved.
18