Full HTML for

Scripted foilset Servers on the Pragmatic Object Web -- Javabeans CORBA HLA COM RMI XML MPI

Given by Geoffrey C. Fox at Madison Wisconsin Internet Server Performance Workshop on June 23 98. Foils prepared July 5 98
Outside Index Summary of Material


We describe the implications of a modern multi-tier Enterprise system where a server does not just get web pages but is a general host of services which are linked together to solve complex problems
These servers can respect any of the 4 distributed object models CORBA, Java/RMI, COM or W3C's XLM WOM/DOM
We illustrate these ideas with an analysis of a multi-protocol server JWORB -- written in Java but serving all protocols
We point out how a multi-tier architecture allows you to build backend systems to increase performance when necessary

Table of Contents for full HTML of Servers on the Pragmatic Object Web -- Javabeans CORBA HLA COM RMI XML MPI

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Servers and the Pragmatic Object Web Javabeans, CORBA, HLA, COM, RMI, XLM, MPI
2 Abstract of Wisconsin Internet Server Performance Presentation
3 NPAC Concepts
4 Pragmatic Object Web Technology Model - I
5 Pragmatic Object Web Technology Model - II
6 NPAC Concepts : HPcc High Performance commodity computing
7 The HPCC Dilemma and its Solution
8 What is Commodity Software
9 Exploiting Multi-Tier Commodity Software Model
10 So in our WebWisdom Distance Education System
11 An Object Web-based 3-Tier Computing System
12 Comparison of 2 3 and 4 Tier Models
13 Multi-Server Model
14 While for High Performance Computing
15 Today's Confusing Multi-Technology Real World Second Tier Server Layer
16 Computational Grid and the Object Web
17 Structure(Architecture) of Applications - I
18 Structure(Architecture) of Applications - II
19 Three Roles of Object Web Technologies in Computing
20 Metacomputing with Web Architecture
21 One Strategy for a Object Web-based Metacomputing
22 Some Capabilities of the Object Web (Server) Architecture for Computing
23 Three Possible Implementations of CFD CSM Linkage
24 HPCORBA Layer with SIO Analogy
25 Picture of JavaBean and JDK1.1 AWT Event Model
26 Basic HPcc Strategy
27 What is Java Grande?
28 What is Goal of Java Grande Forum?
29 Java Grande Forum Benchmarks
30 NPAC Technologies
31 NPAC Concepts: Visual Authoring
32 NPAC Technologies: WebFlow
33 WebFlow Architecture - Servlet based Management
34 WebFlow Flip Module
35 Visual Programming WebFlow, DARP on GLOBUS
36 WebFlow 3 Tier Architecture with High Performance Globus and High Functionality IIOP Services
37 Quantum Simulation Application Example
38 Quantum Simulations problem description
39 Solution using the WebFlow
40 In particular, for Quantum Simulations
41 Quantum Simulations using the WebFlow
42 Sample WebFlow Session on Quantum MonteCarlo
43 NPAC Visual Authoring Tools: Integrating with UML for Visual Authoring
44 Next Steps for HPcc using JavaBeans
45 NPAC Concepts: Pragmatic Object Web
46 NPAC Technologies: JWORB
47 JWORB - Java Web Object Request Broker
48 Demos: JWORB
49 JWORB Demo for HTTP+IIOP Integration
50 JWORB Demo for HTTP+IIOP Integration
51 IIOP Performance for Java ORB's
52 Java IIOP Performance for Structures
53 C++ ORB Much Faster than Java!
54 Integration of DIS with Object Web Based Computing
55 NPAC Techs: Object Web RTI
56 JWORB based Object Web RTI
57 HLA/RTI versus HPF/MPI
58 HLA/RTI at Top Management Level
59 Architecture of HLA/RTI Services
60 HLA/RTI Management Structure
61 Resource Management and Scheduling
62 WebHLA: Visual HLA Authoring
63 HLA FEDEP Federation Development Process
64 WebFlow based Visual Simulation Tools for FEDEP
65 Use of WebFlow/JWORB in WebHLA
66 Towards WebHLA based Metacomputing: SBA Challenges and Opportunities
67 WebHLA based Virtual Prototyping Environment
68 Parallel Computing v. Metacomputing
69 A Parallel Computer Viewed as a Single CORBA Object
70 Fig. 13: Each node of a parallel computer instantiated as a Corba object.
71 Can HPcc Give High Performance if applied to each node of a parallel computer?
72 Fig 15: A message optimization bridge

Outside Index Summary of Material



HTML version of Scripted Foils prepared July 5 98

Foil 1 Servers and the Pragmatic Object Web Javabeans, CORBA, HLA, COM, RMI, XLM, MPI

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Geoffrey Fox, Wojtek Furmanski
Syracuse University
NPAC
111 College Place Syracuse NY 13244
Phone:3154432163
June 23 Madison Wisconsin
1998 Workshop on Internet Server Performance
in conjunction with SIGMETRICS 98
http://www.npac.syr.edu/users/gcf/wisconsinjune98 http://www.npac.syr.edu/users/gcf/wiscpaper/wisc98.html

HTML version of Scripted Foils prepared July 5 98

Foil 2 Abstract of Wisconsin Internet Server Performance Presentation

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
We describe the implications of a modern multi-tier Enterprise system where a server does not just get web pages but is a general host of services which are linked together to solve complex problems
These servers can respect any of the 4 distributed object models CORBA, Java/RMI, COM or W3C's XLM WOM/DOM
We illustrate these ideas with an analysis of a multi-protocol server JWORB -- written in Java but serving all protocols
We point out how a multi-tier architecture allows you to build backend systems to increase performance when necessary

HTML version of Scripted Foils prepared July 5 98

Foil 3 NPAC Concepts

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Pragmatic Object Web - integrate competing models for distributed objects: Java, CORBA, COM, WOM
High Performance Commodity Computing - traditional HPC modules managed by POW on new commodity clusters (PC with NT, Linux or Solaris OS) using Distributed Computing Concepts (HLA,RTI) at coarse grain and classic HPCC for computational kernels
Visual Authoring of HPDC Applications - towards a uniform high-level visual framework that integrates design / modeling, development / authoring and runtime / steering of distributed applications

HTML version of Scripted Foils prepared July 5 98

Foil 4 Pragmatic Object Web Technology Model - I

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Basic Vision: The current incoherent but highly creative Web will merge with distributed object technology in a multi-tier client-server-service architecture with Java based combined Web-ORB's
COM(Microsoft) and CORBA(world) are competing cross platform and language object technologies
  • Javabeans plus RMI is 100% pure Java distributed object technology
  • Every Netscape4 browser has a Visigenic ORB built in
  • W3C says you should use XML
Need to abstract entities (Web Pages, database entries, simulations) and services as objects with methods(interfaces)
  • CORBA is "just" CGI done right
How do we do this while infrastructure still being designed!
Major Commercial Java Activity today is on Server NOT Client

HTML version of Scripted Foils prepared July 5 98

Foil 5 Pragmatic Object Web Technology Model - II

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
One can anticipate this by building systems in terms of Java objects e.g. develop Web-based databases with Java objects using standard JDBC (Java Database Connectivity) interfaces
  • Oracle DB2 Informix Sybase, Lotus Notes, Object database confusion becomes an issue of performance/robustness NOT functionality
  • Use CORBA to wrap existing applications
Even better use (Enterprise) Javabeans which are Java's (middle tier) or client componentware offering visual interfaces, containers (here they are consistent with CORBA standard) and standard software engineering interfacing rules
  • e.g. Java Blend is built on top of JDBC to use enterprise Javabeans to store Java Objects in relational databases
Confused? Read "Building Distributed Systems on the Pragmatic Object Web" -- Book of class I teach to CS/CE students at Syracuse http://www.npac.syr.edu/users/shrideep/book

HTML version of Scripted Foils prepared July 5 98

Foil 6 NPAC Concepts : HPcc High Performance commodity computing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Distributed Computing becomes a commodity article (driven by Web Technologies)
Market niches for orthodox MPP style HPC are shrinking
NT clusters become a viable and more cost effective alternative to classic high performance systems
HLA/RTI from distributed simulation community natural for coarse grain while MPI/HPF/.... Natural for fine grain -- must integrate which we claim can be done using a multi tier architecture
Web/Commodity software - promising base to build new HPcc (commodity computing)

HTML version of Scripted Foils prepared July 5 98

Foil 7 The HPCC Dilemma and its Solution

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
HPCC has developed good research ideas but cannot implement them as solving computing's hardest problem with 1 percent of the funding
  • HPCC applications are very complex and use essentially all computer capabilities and also have synchronization and performance constraints from HPCC
We have learnt to use commodity hardware either
  • partially as in Origin 2000/SP2 with consumer CPU's but custom network or
  • fully as in PC cluster with fast ethernet/ATM
Let us do the same with software and design systems with maximum possible commodity software basis

HTML version of Scripted Foils prepared July 5 98

Foil 8 What is Commodity Software

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
The world is building a wonderful distributed computing (information processing) environment using Web (dissemination) and distributed object (CORBA COM) technologies
This includes Java, Web-linked databases and the essential standards such as HTML(documents), VRML(3D objects), JDBC (Java database connectivity).
  • The standard interfaces are essential in that they allow modular (component based) software
We will "just" add high performance to this commodity distributed infrastructure
  • Respecting architecture of the object web, should allow us to naturally use improved software as it produced
The alternative strategy starts with HPCC technologies (such as MPI,HPF) and adds links to commodity world. This approach does not easily track evolution of commodity systems and so has large maintenance costs

HTML version of Scripted Foils prepared July 5 98

Foil 9 Exploiting Multi-Tier Commodity Software Model

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Essential idea is consider a three tier model
  • Top tier is the client (in "Network Computer" based 4 tier architectures this becomes 2 tiers)
  • Second tier are servers coordinated by commodity technologies such as the Web and CORBA and communicating via HTTP(Web), IIOP(CORBA), RMI or custom Java sockets.
  • Use middle tier component/container model -- Enterprise Javabeans
  • Third tier are services such as databases, MPP's
Preserve the first two tiers as a high functionality commodity information processing system and confine HPCC to the third (lowest) tier.
  • MPI becomes the high performance "machine code" for message passing which you use if HTTP, IIOP or RMI have insufficient performance

HTML version of Scripted Foils prepared July 5 98

Foil 10 So in our WebWisdom Distance Education System

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
The backend servers would include CORBA objects from Educom's IMS projects; Video servers and Oracle database defined curricula pages from NPAC
The front end servers would include distributed students with mirror sites to get performance
In the middle tier, we have JDBC query processing and XLM servlet parsers mapping original data in optimal fashion to match needs of student -- choosing from pure HTML or Interactive Java Whiteboard views of a given object

HTML version of Scripted Foils prepared July 5 98

Foil 11 An Object Web-based 3-Tier Computing System

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Middle Server Tier
Basic HTTP/CGI Web Server
Java Web Server
Transaction Processing Server
Business Transaction Management
Javabean
Enterprise Javabean
Old and New Useful Backend Software
Object Broker
Back-end Tier
The Services
Client
Front-end Tier

HTML version of Scripted Foils prepared July 5 98

Foil 12 Comparison of 2 3 and 4 Tier Models

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Client
Middle Tiers
Back End
Thin Client

HTML version of Scripted Foils prepared July 5 98

Foil 13 Multi-Server Model

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 14 While for High Performance Computing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
We have multiple supercomputers in the backend -- one doing CFD simulation of airflow; another structural analysis while in more detail you have linear algebra servers (Netsolve); Optimization servers (NEOS); image processing filters(Khoros);databases (NCSA Biology workbench); visualization systems(AVS, CAVEs)
  • One runs 10,000 separate programs to design a modern aircraft which must be scheduled and linked .....
All linked to collaborative information systems in a sea of middle tier servers(as on previous page) to support design, crisis management, multi-disciplinary research

HTML version of Scripted Foils prepared July 5 98

Foil 15 Today's Confusing Multi-Technology Real World Second Tier Server Layer

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
W is Web Server
PD Parallel Database
DC Distributed Computer
PC Parallel Computer
O Object Broker
N Network Server e.g. Netsolve
T Collaboratory Server
Clients
Middle Layer (Server Tier)
Third Backend Tier

HTML version of Scripted Foils prepared July 5 98

Foil 16 Computational Grid and the Object Web

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Larry Smarr and NCSA Collaboration have stressed analogy of deployment of computer/communication technology with impact that electrical and transportation grids had
  • I.e. they enabled revolutions in society
  • What is relative role of High-end and Commodity-end in Grid?
The transportation system was built using lessons from and feed up/down from Sports cars, Cadillacs, Model T's, Ford Escorts etc.
Computational Grid will be shaped by and shape all applications and technologies
Internetics expresses synergy between high-end and commodity approaches
A computational grid is a metacomputer or a "high performance distributed computer system" which must be influenced by and influence the "Object Web" which is here defined as "mass-market"/business IntraNet (low to low) use of Internet/distributed Information Systems

HTML version of Scripted Foils prepared July 5 98

Foil 17 Structure(Architecture) of Applications - I

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Applications are metaproblems with a mix of module and data parallelism
Modules are decomposed into parts (data parallelism) and composed hierarchically into full applications.They can be the
  • "10,000" separate programs (e.g. structures,CFD ..) used in design of aircraft
  • the various filters used in Khoros based image processing system
  • the ocean-atmosphere components in integrated climate simulation
  • The data-base or file system access of a data-intensive application
  • the objects in a distributed Forces Modeling Event Driven Simulation

HTML version of Scripted Foils prepared July 5 98

Foil 18 Structure(Architecture) of Applications - II

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Modules are "natural" message-parallel components of problem and tend to have less stringent latency and bandwidth requirements than those needed to link data-parallel components
  • modules are what HPF needs task parallelism for
  • Often modules are naturally distributed whereas parts of data parallel decomposition may need to be kept on tightly coupled MPP
Assume that primary goal of metacomputing system is to add to existing parallel computing environments, a higher level supporting module parallelism
  • Now if one takes a large CFD problem and divides into a few components, those "coarse grain data-parallel components" can be supported by computational grid technology
  • so no clean division but coarse grain modules are general goal!

HTML version of Scripted Foils prepared July 5 98

Foil 19 Three Roles of Object Web Technologies in Computing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
1)One can "just" use Object Web technologies as a software infrastructure for building parallel, distributed or sequential computing environments which can have a very different architecture from the Web
  • e.g. write software in Java
  • e.g. adopt interfaces/standards such as JDBC, VRML, Java3D
2)Harness the power of the Web as a computer -- use up the idle cycles on the WebTV's in every home -- typically a Web Client based system
  • We will not discuss this here
3)One can view the Object Web as a distributed information system with modest performance and build a metacomputing system with the Web architecture
  • we "only" need to enhance the Object Web to get high performance
  • several ways of doing this -- common feature is that they all inherit rich web capabilities -- typically Web or Object Server based
  • By inheriting Object Web architecture, naturally track evolving and improving commodity technology base

HTML version of Scripted Foils prepared July 5 98

Foil 20 Metacomputing with Web Architecture

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
It is natural to base on either a network of Web Clients or Web Servers
  • Not clear if distinction (in capability) between web servers and clients will remain as clients are adding functionality and any PC can run a server as well as a client!
Web Client Models Include SuperWeb (Javelin) from UCSB and are well illustrated by the January 1997 hotwired article "Suck your Mips".
Greater functionality but less power and pervasiveness is a pure Web Server model as proposed by NPAC
  • Can either use in controlled (IntraNets or run a server on every node of your MPP) or uncontrolled (all the world wide web hosts) fashion
  • Uncontrolled mode has interesting economic implications and is "controversial" for security and network performance area
Note total compute power in all Web "clients" is about 100 times that in all Central Supercomputers

HTML version of Scripted Foils prepared July 5 98

Foil 21 One Strategy for a Object Web-based Metacomputing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Object Web Software provides a high functionality but modest performance distributed computing (Metacomputing) environment based on either Web (soon to be CORBA IIOP and HTTP/Java Socket) Servers or Clients
Here we will explore an architecture using servers for control as higher functionality than clients although currently less broadly deployed
  • Some "parallel" computing problems (e.g. embarrassingly parallel ones) can "immediately" use Web as a parallel engine with no performance enhancements
Object Web Only addresses Integration of already decomposed parts!
  • Inherit and extend decomposition (data-parallel) technology from HPCC (parallel compiler and library technology)
  • Compose / Integrate Modules with Web Technology
  • Inherit all the pervasive (not high performance) services from the Web

HTML version of Scripted Foils prepared July 5 98

Foil 22 Some Capabilities of the Object Web (Server) Architecture for Computing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Here are some examples of using our approach where large scale industry investment in Web technology appears to add significant value to metacomputing systems built with Web architecture
  • We illustrate some of them in following foils
  • many also apply to parallel computing environments
Multidisciplinary and Computational Steering Applications
  • link people data computation with collaboratory server as part of system
Visual and Interpreted Programming Environments
  • MATLAB/AVS/ Khoros like Systems (coarse grain Software Integration)
  • Software Component based approaches
Technologies to get High Performance CORBA
Integration with Forces Modeling (Distributed Event driven Simulation)
Integration with Networked enabled servers such as NEOS and Netsolve
  • These are naturally implemented using CORBA as are
  • Software repositories (RIB from National High Performance Software Exchange)

HTML version of Scripted Foils prepared July 5 98

Foil 23 Three Possible Implementations of CFD CSM Linkage

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
1)Simple Server Approach 2)Classic HPCC Approach
3)Hybrid Approach with control at server and
data transfer at
HPCC level

HTML version of Scripted Foils prepared July 5 98

Foil 24 HPCORBA Layer with SIO Analogy

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Client Tier 1
Middle Tier 2 IIOP
Tier 3: VIA,MPI-IO,Globus
High Performance Messaging
High Functionality Messaging
Use Event Mechanism of Javabeans to invoke High
performance third tier data transfer from middle tier data control

HTML version of Scripted Foils prepared July 5 98

Foil 25 Picture of JavaBean and JDK1.1 AWT Event Model

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
4)Invoke High Performance Message Transfer between Observers and Sources specified in Message Event
Server Tier
Data Source
Data Sink (Observers)
5)Actual Data Transfer
High Performance Tier
2)Prepare
Message Event in Source Control
1)Register Observers with Listener

HTML version of Scripted Foils prepared July 5 98

Foil 26 Basic HPcc Strategy

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
HPcc is High Performance commodity computing
Encapsulate services (from databases to instruments to MPP's) as middle tier distributed objects using an approach that will evolve to COM/CORBA in future but is deployable today
  • JDBC (Java Database Connectivity) links to databases
  • (Java) web server/CORBA JWORB interfaces to compute modules
  • Client Side Javabean visual interfaces
  • Server Side Enterprise Javabeans
Establish Java Frameworks and Equivalent CORBA Facilities
  • for Computing Services
  • Distributed Scientific Objects DSO -- Compute and Data sectors --- with several domain specific interfaces inherited from DSO
This already gives you an approach to seamless access and a framework for composing complex metaproblems by linking programs together or programs to databases

HTML version of Scripted Foils prepared July 5 98

Foil 27 What is Java Grande?

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Use of Java for:
High Performance Network Computing
Scientific and Engineering Computation
(Distributed) Modeling and Simulation
Parallel and Distributed Computing
Data Intensive Computing
Communication and Computing Intensive Commercial and Academic Applications
HPCC Computational Grids ........
Very difficult to find a "conventional name" that doesn't get misunderstood by some community!

HTML version of Scripted Foils prepared July 5 98

Foil 28 What is Goal of Java Grande Forum?

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Java has potential to be a better environment for "Grande application development" than any previous languages such as Fortran and C++
The Forum Goal is to develop community consensus and recommendations for either changes to Java or establishment of standards (frameworks) for "Grande" libraries and services
These Language changes or frameworks are designed to realize "best ever Grande programming environment"
First Meeting Mar 1 Palo Alto at Java 98 -- 200 Attendees set Agenda -- 30 permanent people and second meeting May 9-10
Two more meetings this year -- Draft Report SC98
http://www.npac.syr.edu/projects/javaforcse

HTML version of Scripted Foils prepared July 5 98

Foil 29 Java Grande Forum Benchmarks

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
The Forum identified several types of benchmarks to probe issues not covered by the many commercial sets. In particular
  • RMI benchmarks to cover the particular use (transient communication and not persistent storage) in large scale distributed computing
  • Java VM for scaling and latency
  • Grande Applications from scientific and HPCC arenas such as Monte Carlo simulation, discrete event simulation and CFD

HTML version of Scripted Foils prepared July 5 98

Foil 30 NPAC Technologies

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
WebFlow - Web based visual dataflow programming
JWORB - Java Web Object Request Broker - POW middleware server node
Globus Wrappers - Globus services as WebFlow modules (to become CORBA objects and services)
Object Web RTI - DMSO RTI of HLA as JWORB service
Visual Authoring Tools - integrates POW with commodity front-ends (Java applets, ActiveX controls, Office+VBA apps etc.)
Televirtual (TVR) Environments - Interactive Web/3D front-ends for multi-user POW applications (DirectX, VRML, Java3D)
(FMS) Training Space - TVR front-ends to POW linked databases

HTML version of Scripted Foils prepared July 5 98

Foil 31 NPAC Concepts: Visual Authoring

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Pragmatic Object Web is multi-lingual and programmatically complex
Web based Visual Programming offers a promising avenue towards uniform visual standards (e.g. UML accepted both by Microsoft and OMG)
NPAC WebFlow starts from the visual composition support (a la AVS / Khoros) and extends it towards steering (NCSA apps) and design / development (planned integration with UML)
Related NPAC technologies include: DARP, SciVis

HTML version of Scripted Foils prepared July 5 98

Foil 32 NPAC Technologies: WebFlow

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
WebFlow - a visual programming environment for the Web with real-time dataflow graph authoring tools
3-tier multi-server system with Web browser / Java applet front-end, Java Web Server middleware and (Java) computational modules in the backend
Early prototype - pure Java system, controlled by servlet based Session, Module and Connection Managers
POW middleware will support all languages
Used to build both linked modules and as framework for "wrapping legacy codes" as "distributed scientific objects"

HTML version of Scripted Foils prepared July 5 98

Foil 33 WebFlow Architecture - Servlet based Management

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 34 WebFlow Flip Module

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Original Image
Output Image
Some of
Available Image Filters
Visual DataFlow
Interface

HTML version of Scripted Foils prepared July 5 98

Foil 35 Visual Programming WebFlow, DARP on GLOBUS

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Client (Tier 1): Java Graph Editor for Webflow or interpreted debugger (DARP) linked to Java Visualizer SciVis
  • In four tier model, these Java tools would run on Java Web Server with pure HTML client
Middle Tier 2: Network of Java Servers linking UNIX and Windows NT systems with "all" services
Back-end Tier 3: Globus where available. In early 98, this is high performance UNIX system links with no databases and no NT
Note this is a good high performance I/O architecture whether file system, CORBA or database based
After architecture foil, next Foils show
  • Pure Tier 2 WebFlow system with simple Java Image filters
  • Customized "database" solution for NCSA Grand Challenge in Quantum Monte Carlo
  • DARP Debugging Interface for HPF with interactive breakpoints

HTML version of Scripted Foils prepared July 5 98

Foil 36 WebFlow 3 Tier Architecture with High Performance Globus and High Functionality IIOP Services

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Client Tier
IIOP High Functionality
Middle Tier
Future Globus
Globus
Future Parallel I/O

HTML version of Scripted Foils prepared July 5 98

Foil 37 Quantum Simulation Application Example

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 38 Quantum Simulations problem description

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
A chain of high performance applications is run repeatedly for different data sets
Each application can be run on several different platforms, depending on the problem size and the load of the machines
Input and output files must be moved between the machines, as needed
Output files are visually inspected by the researcher; if necessary applications are rerun with modified input files
Typically, output files must be converted to a different format before using them as input to the next application in the chain

HTML version of Scripted Foils prepared July 5 98

Foil 39 Solution using the WebFlow

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
WebFlow front-end for visual authoring: drag-and-drop composition of meta-applications from compute-web nodes.
WebFlow middle-tier implementing distributed object technologies in Java (platform independent, including NT-workstations). The implementation is based on industry standards: currently servlet extended httpd servers, and evolving towards CORBA base
WebFlow back-end based on commodity software components, in particular low level matacomputing toolkit Globus for HPCC

HTML version of Scripted Foils prepared July 5 98

Foil 40 In particular, for Quantum Simulations

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Use WebFlow editor to visually compose the chain
Use integrated with the WebFlow metacomputing directory services (MDS) of Globus to identify resources
Use WebFlow proxies to Globus resource allocation manager (GRAM) to allocate the resources, including authentication
Use high performance data transfer mechanisms of Globus (GASS, RIO)
Use commodity DBMS or LDAP services to identify and retrieve data set as needed.

HTML version of Scripted Foils prepared July 5 98

Foil 41 Quantum Simulations using the WebFlow

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 42 Sample WebFlow Session on Quantum MonteCarlo

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 43 NPAC Visual Authoring Tools: Integrating with UML for Visual Authoring

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Rose by Rational is the leading implementation of the new standard UML (Uniform Modeling Language)
UML supports OO design for various object-oriented languages in terms of a family of diagram topologies (class, sequence, interaction, activity, deployment..)
Microsoft has a similar product called Visual Modeler as part of Visual Studio Enterprise Edition
We are planning to build new WebFlow front-end that would conform to UML and extend it from the design stage towards composition and runtime steering stages

HTML version of Scripted Foils prepared July 5 98

Foil 44 Next Steps for HPcc using JavaBeans

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Currently WebFlow uses a Java Server and manipulates Java applications which can be frontends with native methods to Fortran C or C++ routines
Change Java Server to JWORB -- server integrating HTTP and IIOP (Web and CORBA)
Change Java Applications to JavaBeans and non-Java apps to CORBA objects
Change linkage in WebFlow to respect JavaBean event mechanism
Then we get HPComponentware
And using our multi-tier model high performance CORBA
WebFlow is HPCC version of a
Typical Visual Interface for JavaBeans

HTML version of Scripted Foils prepared July 5 98

Foil 45 NPAC Concepts: Pragmatic Object Web

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
3-(or more)-tier architecture - Web browser front-ends, legacy (e.g. databases, HPC modules) backends; fat (1+tier) middleware
Alternative / competing Middleware models:
  • Java - single language solution by Sun
  • CORBA - all languages solution by OMG
  • COM - multi-language solution by Microsoft
  • WOM/XLM - emergent solution by the Web Consortium
Each model does one or other service particularly well
POW attempts at integrating various models and services in terms of multi-protocol middleware servers (JWORB)

HTML version of Scripted Foils prepared July 5 98

Foil 46 NPAC Technologies: JWORB

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
JWORB - Java Web Object Request Broker - multi-protocol middleware network server (HTTP + IIOP + DCE RPC + RTP + ..)
Current prototype integrates HTTP+IIOP i.e. acts as Web Server and CORBA Broker
Next step: add DCE RPC support to include Microsoft COM
JWORB - our trial implementation of POW

HTML version of Scripted Foils prepared July 5 98

Foil 47 JWORB - Java Web Object Request Broker

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 48 Demos: JWORB

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
JWORB (Java Web Object Request Broker) is our multi-protocol (now HTTP + IOOP) middleware server
Difficult to demo as middleware invisible...
We illustrate HTTP and IIOP integration by timing a ping call over IIOP channel while invoking a Web page from JWORB - to notice a transient ping performance drop

HTML version of Scripted Foils prepared July 5 98

Foil 49 JWORB Demo for HTTP+IIOP Integration

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Just IIOP

HTML version of Scripted Foils prepared July 5 98

Foil 50 JWORB Demo for HTTP+IIOP Integration

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Slow down in Ping when JWORB answers HTTP request

HTML version of Scripted Foils prepared July 5 98

Foil 51 IIOP Performance for Java ORB's

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
JacORB
JWORB
ORBIX
RMI
Variable Size Integer Arrays

HTML version of Scripted Foils prepared July 5 98

Foil 52 Java IIOP Performance for Structures

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Java ORBs Transferring
variable size Array of Structures
(RMI slowed by serialization)
RMI
JacORB
ORBIX, JWORB

HTML version of Scripted Foils prepared July 5 98

Foil 53 C++ ORB Much Faster than Java!

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Arrays of Integers C++ about 20 times faster than Java
RMI (Fastest Java) omniORB (C++)

HTML version of Scripted Foils prepared July 5 98

Foil 54 Integration of DIS with Object Web Based Computing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
DoD modeling and simulation (FMS,IMT) community is currently evolving towards the HLA(High level Architecture) framework with the RTI (Run Time Infrastructure) based communication bus.
The goal of HLA/RTI is to enhance interoperability across more diverse simulators than in the DIS realm, ranging from real-time to time-stepped to event-driven paradigms.
HLA defines a set of rules governing how simulators (federates) interact with each others. Federates describe their objects via Object Model Template (OMT) and agree on a common Federation Object Model (FOM).
The overall HLA/RTI model is strongly influenced by the CORBA architecture and in fact the current prototype development is indeed CORBA based.
Building HPCC on the Object Web implies that we can a common framework for both distributed (event driven) simulations and classic time stepped parallel computing

HTML version of Scripted Foils prepared July 5 98

Foil 55 NPAC Techs: Object Web RTI

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Implements DMSO RTI as JWORB service with 2 major CORBA objects: RTI Ambassador and Federate Ambassador
Offers natural Web interfaces to HLA simulations via HTTP or IIOP channels
Natural support for human-in-the-loop (Web surfers join WebHLA federation and can collabortate as WebHLA federates)
Attractive model for High Level Metacomputing

HTML version of Scripted Foils prepared July 5 98

Foil 56 JWORB based Object Web RTI

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 57 HLA/RTI versus HPF/MPI

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
We can support any given paradigm at either high functionality (web server) or high performance (backend) level
HPCC Messaging could be a Java/RMI middle tier MPI or Nexus/Optimized Machine specific MPI at backend
JWORB supports CORBA based RTI already and we can bridge to high performance event driven simulation systems like SPEEDES at the high performance backend layer
However most problems can be thought of a set of coarse grain entities which are internally data parallel but the coarse grain structure is "functional" parallelism
So HLA/RTI is especially natural as tier 2 management level of these coarse entities
Entities can be time synchronized simulations and use MPI(HPF?) at either middle or back end tier or in fact as in DMSO simulations a federate running a custom discrete event simulation

HTML version of Scripted Foils prepared July 5 98

Foil 58 HLA/RTI at Top Management Level

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Resource Management typically breaks down into either
  • a) Scheduling of largely independent jobs
  • b) Optimized data placement in a data parallel entity
So a) is all at middle tier and should use commodity solutions -- there are many queuing systems such as Condor, Codine, LSF which we can "wrap" and Microsoft does not yet have a fully scalable commodity solution
  • Enterprise computing has Transaction Monitors
So it is still embryonic but we suggest adopting the HLA/RTI framework as this supports job placement, interdependencies (time management) and hierarchical systems of federations --> federates
Optimized data placement has been largely solved as a mathematical problem by HPCC but not packaged broadly. Our suggestion suggests how to invoke as backend support for a commodity service

HTML version of Scripted Foils prepared July 5 98

Foil 59 Architecture of HLA/RTI Services

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 60 HLA/RTI Management Structure

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
So we have a hierarchy of entities Federation --> Federates --> Objects where can have many tiers in each category
A Federation could be the set of all jobs to be run on a particular site
A Federate could be a job consisting of multiple possibly shared objects
Objects are just data structures in HLA -- you send interaction events instead of invoking methods
These aspects are organized by Federation, Object and Ownership management services
We can classify both jobs and computers as separate federations

HTML version of Scripted Foils prepared July 5 98

Foil 61 Resource Management and Scheduling

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
Declaration Management corresponds to publication and subscription model of matching services and needs
  • Natural (agent-based) computing model on web
Time Management corresponds to scheduling of sequenced events in discrete event simulations -- it will allow support generally dependencies in jobs -- the CAVE visualization system must be used after simulation
Data management is classic "load-balancing" problem of parallel computing where you map objects optimally to computers to minimize communication cost and load imbalance

HTML version of Scripted Foils prepared July 5 98

Foil 62 WebHLA: Visual HLA Authoring

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
DMSO specifies FEDEP (Federation Development Process) that enforces tools reuse via common DIFs (Data Interchange Formats)
This maps naturally on the dataflow model of WebFlow with modules linked by DIF channels
Textual/spreadsheet editor modules can be built from commodity tools using VBA scripting
This project uses WebFlow and commodity software to support visual HLA authoring

HTML version of Scripted Foils prepared July 5 98

Foil 63 HLA FEDEP Federation Development Process

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 64 WebFlow based Visual Simulation Tools for FEDEP

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 65 Use of WebFlow/JWORB in WebHLA

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 66 Towards WebHLA based Metacomputing: SBA Challenges and Opportunities

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
SBA - Simulation based Acquisiton
New concept in advanced DoD M&S - full product development cycle in Synthetic Environment (including CFD, CEA etc. HPC simulations)
We claim that WebHLA is capable to deliver SBA in the near term due to the critical mass of accumulated open standards and freeware

HTML version of Scripted Foils prepared July 5 98

Foil 67 WebHLA based Virtual Prototyping Environment

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index

HTML version of Scripted Foils prepared July 5 98

Foil 68 Parallel Computing v. Metacomputing

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
HPcc can be applied to either parallel or high-performance distributed computing (aka metacomputing)
In metacomputing, HPcc fills a void as few if any high level tools
In parallel computing, HPcc provides uniform and perhaps more attractive sustainable user environment
Can view a parallel computer either as a single tier 2 object
  • or as a collection of tier 2 objects -- one per node
Both are interesting
  • As a single object provides a CORBA like facility of invoking as a distributed object
  • As one object per node, can use HPcc to provide node level programming environment

HTML version of Scripted Foils prepared July 5 98

Foil 69 A Parallel Computer Viewed as a Single CORBA Object

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
This is classic host-node computing model
Host is logically distinct but can be on same machine as a "node"

HTML version of Scripted Foils prepared July 5 98

Foil 70 Fig. 13: Each node of a parallel computer instantiated as a Corba object.

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
The "Host" is logically a separate Corba object but could of course be instantiated on the same computer as one or more of the nodes. Using the protocol bridge of fig. 15, one could address objects using Corba with local parallel computing nodes invoking MPI and remote accesses using Corba where its functionality (access to very many services) is valuable.
From HPcc as High Performance Commodity Components

HTML version of Scripted Foils prepared July 5 98

Foil 71 Can HPcc Give High Performance if applied to each node of a parallel computer?

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
YES! If one uses the same separation between control and data transfer explained for metacomputing case
Build a "bridge" that accepts MPI HTTP or CORBA invocation but invokes either the powerful slow CORBA mechanism or the nifty optimized MPI
Why address nodes as CORBA? -- so you can build applications uniformly so they can access nodes and servers around the world in same message passing style
Why address nodes with MPI? -- so you can get code that executes very fast!
Why address nodes with HTTP? -- so you can get advantages of CORBA today as Web Servers dominate!

HTML version of Scripted Foils prepared July 5 98

Foil 72 Fig 15: A message optimization bridge

From General NPAC Foils-98A starting January 98 (PowerPoint) Madison Wisconsin Internet Server Performance Workshop -- June 23 98. *
Full HTML Index
This allows MPI (or equivalently Nexus, Globus or PVM) and commodity technologies to coexist with a seamless user interface.
From HPcc as High Performance Commodity Components

© Northeast Parallel Architectures Center, Syracuse University, npac@npac.syr.edu

If you have any comments about this server, send e-mail to webmaster@npac.syr.edu.

Page produced by wwwfoil on Sun Jul 5 1998