Title: NCSA Symera Symbiotic Extensible Resource Architecture
1NCSA Symera(Symbiotic Extensible Resource
Architecture)
2Motivations for Symera
- Distributed computing should be as
straightforward and as reliable as desktop
computing. - Handling distributed objects should be as
transparent as local thread management. - Reliability is crucial. The only machine that is
critical to the success of a process is the
machine that initialized the process.
3Motivations for Symera (2)
- Workstation independence is critical for
achieving high reliability and scalability in a
cluster. - Each machine maintains its own state.
- The designated Resource Manager/Broker mirrors
these states. - Object creation is more dynamic (due to resource
scheduling) and persistent (due to moniker
insertion)
4Motivations for Symera (3)
- Do not perpetuate the standard paradigm of
parallel processing on single mainframe systems.
The network/user-interrupt reliability will
always be a factor on independent machine cluster
systems. - Successful distributed systems should take
advantage of the distributed environment, not
just compensate for it.
5Symera Project Layers
- Cluster management system persistence,
resource scheduling and security
- User administration system interfaces, object
monitoring and software installation - Application development COM/Symera class support
libraries and application design
6NT Cluster scenarios
7DCOM Architecture
8Symera Viewer
9SYMERA 1.0 Architecture
Service Manager
Component Manager
Resource Manager
Job Manager
Component Library
10SYMERA 1.0 Architecture
User Interfaces SymView.exe
System Objects SymServ.exe
Applications Libraries SymLib.lib/SymUtils.li
b
Service Object
Resource Manager
API Library
Viewer
Node Monitor
Job Controller
Application
Administration
JobEditor
XMLParser
Objects
Figure 1
11NCSA Symera Distributed System ... Job Submission
Intranet
Internet
Start the application
Windows/Java GUI
HTML form/Java applet
XML Job File
Create a Symera Component
Local (Interactive)
Remote (Batch)
Transfer files
Create a Symera Host (Job Controller)
Symera Cluster
12Job/Process Object Configuration
S3Edit
Node Types
Drone Types
Resource Manager
Job Controller
object database
Drone Object
JobFile
The App
13SYMERA Object Relationships
JobController
Object Server
Object Server
CSymObj
CSymObjRef
CSymMoniker
CSymMoniker
CSymObjRef
CSymObj
Figure 3
14Cradle - Traveling Salesman
15DCOMtest
Local COM
Remote DCOM
16DCOMtest Benchmark Graphs
Latency
Bandwidth
17PovRay Scaling Performance
18Figure 4
19Life3D Class Conversion
User Interface
Distributed Object
CMainWindow
CFaceWindow
CCubeFace
CCubeFace (interface)
CFace (implementation)
CSymObj
CSymObjRef
CSymObj
Original classes
New classes
Symera base classes
Figure 5
20Symera Goals
- Become a system whose architecture is flat and
distributed, thus providing higher reliability
and scalability by design - Handle resource management by a roaming
object-machine broker which is elected upon
request, maintaining a recoverable distributed
state. - Put identical software on each machine, enabling
easy installation and troubleshooting.
21Symera Goals (2)
- Clusters will be highly dynamic...able to join,
quit and reconfigure easily much like membership
within NT workgroups. - Create and edit object configurations locally
using an XML format database, making object
configuration straightforward and more dynamic. - Eliminate excessive proprietary structure and
support flexibility and reliability.
22Current state...
- Symera 1.0 developer preview is scheduled for
release September 1998. - Symera 1.0 general public release will be out
early next year. - We are currently evaluating suitable distributed
parallel applications which will drive the future
development of Symera.