Full HTML for

Scripted foilset Web Technologies for Parallel and Distributed (Meta)Computing

Given by Geoffrey C. Fox at ParCo Conference Bonn on Sept 16,97. Foils prepared Sept 12 97
Outside Index Summary of Material


We describe how a network of servers architecture can naturally support both parallel and distributed computing while
Java can be used for both the client interface and for programming parallel and sequential scientific problems
This is illustration in multidisciplinary applications, forces modeling, integration of CORBA, role of component based software, interpreters
we discuss role of collaboration technologies
we describe relevance of Web technologies

Table of Contents for full HTML of Web Technologies for Parallel and Distributed (Meta)Computing

Denote Foils where Image Critical
Denote Foils where HTML is sufficient
Denote Foils where Image is not available
denotes presence of Additional linked information which is greenblueed out if missing

1 Commodity(Web) Technologies for Parallel and Distributed (Meta)Computing ParCo 97 September 16,97 Bonn Germany
2 Abstract of Web Technologies for Parallel and MetaComputing
3 Some Concepts Learnt from HPCC Initiative
4 Some Relevant Technical Trends
5 The Computing Pyramid
6 Web Software is the Best!
7 Synergy of InterNet and IntraNets
8 We have the Web Tools in Place - I !
9 We have the Web Tools in Place - II!
10 Four Roles of Object Web Technologies in Computing
11 Some Tactical Opportunities of Object Web Technologies - I
12 Some Tactical Opportunities of Object Web Technologies - II
13 Some Classes of Applications
14 Inevitable Relevance of the Object Web
15 Structure(Architecture) of Applications - I
16 Structure(Architecture) of Applications - II
17 HPCC Software issues
18 Java for Scientific Computing Resource
19 One Strategy for a Object Web-based Metacomputing
20 A Web-based 3-Tier Computing System
21 Web-Server based Metacomputer Capabilities at 3 levels
22 General Object Web based Middle Tier Server Architecture
23 Role of Collaboratory Systems
24 There are (at least) 3 Major Roles for JAVA in Computation
25 The 3 Roles of Java
26 Java for Building User Interfaces
27 Summary of the VPL -- Virtual Programming Laboratory
28 VPL 1.0 File Manager Screen
29 VPL 2D Graphics (VPLPlot 1.0) Samples Screen
30 Kivanc Dincer's Java FrontEnd to Pablo - I
31 Overview
32 PPT Slide
33 What is Relevance of VRML(2) for Scientific Computing?
34 GIS integration with Weather Simulation application - II.
35 Metacomputing with Web Architecture
36 Article on MIP Sucking Java Applets
37 High Functionality Software Layer
38 Architecture of HPcc Commidity Technology High Performance Computing System
39 Proposed Approach to High Performance Messaging
40 Three Possible Implementations of CFD CSM Linkage
41 Picture of JavaBean and JDK1.1 AWT Event Model
42 Some Capabilities of the Object Web (Server) Architecture for Computing
43 Web Architecture Supports Interpreted Environments
44 Integrated Compiled and Interpreted Environments II
45 Use of PCRC Infrastructure -- The HPF front-end to produce an Integrated Environment for HPF Compiler and Interpreter
46 Architecture of the Integrated Interpreter/Compiler System
47 Switching between compiled and interpreted modes
48 Use for Interactive Visualizations
49 Linkage of HPF Interpreter to Compiler
50 Isn't the Web hardware and software too slow to be interesting for HPCC? -Java- II
51 Hierarchy of Software Levels
52 Example of WebFlow = AVS/Khoros using Web
53 WebFlow: Image Processing
54 Component Based Programming Environments
55 3 by 3 Diagram of Programming Environments versus System Complexity from PC to HPCC
56 Integration of Web with CORBA
57 Aspects of HPCORBA Architecture
58 Diagram of HPCORBA Architecture
59 Integration of DIS with Object Web Based Computing
60 Technology Convergence Roadmap - Overview for Forces Modeling, Integrated Modeling and Testing for DoD
61 New Java Frameworks for Advanced Web Services (I)
62 New Java Frameworks for Advanced Web Services (II)
63 Possible Java Frameworks for Computing
64 Proposed Java Computing Services Framework
65 Implementation of a Java Computing Framework
66 WebPersuasion -- Javabean Foilsets
67 Features of a JavaBean Foilset
68 Graphics in the New Tango white Board
69 TANGOsim Collaboration/ Simulation/ Training in Java
70 TANGO Collaboratory
71 TANGO Collaboration Model
72 Role of Collaboratory Systems
73 TANGO: Highlights
74 Tango Screen: Talking Heads and White Board
75 Tango Screen: Physics Applets -- Cross Product, Planets and Neural Network
76 TANGO: Highlights II
77 TANGO: Control Application
78 TANGO: application control
79 TANGO Applications
80 TANGO: Status
81 Collaboratory systems: Taxonomy I
82 Collaboratory systems: Taxonomy II
83 Event Broadcasting: con and pro
84 Typical Web Collaboration Architecture
85 The TANGOsim C2 Application
86 Command and Control Screen with Multimedia Message
87 A demo of animated objects controlled by simulation engine of Tango collaborative system - III
88 TANGO Structure of Multidisciplinary Applications
89 Minimal Web based Multidisciplinary Application
90 Comparison of Communication/Linkage Models
91 General Web Architecture
92 TANGOsim for Distributed Simulation and Computational Steering - I
93 TANGOsim for Distributed Simulation and Computational Steering - II
94 Architecture of JSU Distance Education
95 Java as the Language for Computational Kernels!
96 Some Critical Features of Java as a Programming Language
97 Comparison of Java and Fortran 77/90
98 Java Links the Bottom and Top of Pyramid
99 Isn't the Web hardware and software too slow to be interesting for HPCC? -Java- I
100 Performance of Java is Dreadful!
101 LinPack Java Performance Updated to Sept 30 1996
102 LinPack Java Performance Updated to June 3 1997
103 What Limits Performance of Compiled Java?
104 Isn't the Web hardware and software too slow to be interesting for HPCC? -Java- III
105 Classes of Simulations and their High Performance Needs
106 Java and Parallelism?
107 "Pure" Java Model For Parallelism
108 Mechanisms for Data Parallelism in HPJava

Outside Index Summary of Material



HTML version of Scripted Foils prepared Sept 12 97

Foil 1 Commodity(Web) Technologies for Parallel and Distributed (Meta)Computing ParCo 97 September 16,97 Bonn Germany

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Geoffrey Fox
Syracuse University
NPAC
111 College Place Syracuse NY 13244 4100
3154432163

HTML version of Scripted Foils prepared Sept 12 97

Foil 2 Abstract of Web Technologies for Parallel and MetaComputing

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
We describe how a network of servers architecture can naturally support both parallel and distributed computing while
Java can be used for both the client interface and for programming parallel and sequential scientific problems
This is illustration in multidisciplinary applications, forces modeling, integration of CORBA, role of component based software, interpreters
we discuss role of collaboration technologies
we describe relevance of Web technologies

HTML version of Scripted Foils prepared Sept 12 97

Foil 3 Some Concepts Learnt from HPCC Initiative

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Ideas from HPCC research Good!
Not enough people/funding in field to implement robust production systems
Must re-use as much software (including infrastructure software) as possible
Similarly must build HPCC software in a modular fashion with small enough modules that smallish groups can build effectively
Different modules are likely to use different base technologies (Fortran v Java v C++ etc.) and so interoperability essential!
No silver bullet on the horizon - maybe pessimistic but implies better HPCC environments implies better implementations of existing ideas.
Need to support both production use of MPP's and "rapid prototyping" in development of new applications - latter is not well supported by current HPCC software systems even though need parallel support for prototyping of new 3D simulations

HTML version of Scripted Foils prepared Sept 12 97

Foil 4 Some Relevant Technical Trends

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
PC and workstation clusters are of growing important and this typically distributed memory people's technology is contrasted with distributed shared memory tightly coupled MPP's.
Computational science moving to multidisciplinary (multi-component) applications
Corresponding growing use of databases (for data-intensive applications)
Interoperability between disparate heterogeneous platforms, support of multidisciplinary applications, and metacomputing are three related important areas
"full metacomputing" (decompose general problem on general networked resources) may not be relevant
The Web is delivering a new operating environment (WebWindows) and a rich distributed computing software infrastructure with especially excellent support for software integration
There is a need for a new scalable technical operating system (NT v UNIX v WebWindows)

HTML version of Scripted Foils prepared Sept 12 97

Foil 5 The Computing Pyramid

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Bottom of Pyramid has 1000 times dollar value and compute power of best supercomputer (tip of pyramid) but supercomputer has high performance network to support close synchronization needed by classic parallel algorithms
Use of
Web Technologies
is naturally a

HTML version of Scripted Foils prepared Sept 12 97

Foil 6 Web Software is the Best!

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
By definition, Web Software will be the "best" software ever built because it has the largest market (and so greatest leverage of investment dollars) and most creative business model (harness the world's best minds together with open interfaces)
  • As Web Software is "distributed computing infrastructure", one will need to customize and integrate for each application
  • Note PC software and perhaps even IBM business OS was high quality software but not so open and not a complete model
One should build upwards from the "democractic Web"
  • e.g. up from POTS --> ISDN/Cable Modem/ADSL --> ...
  • Not down from ..........<--- ATM
This allows you to both deliver your application to the general public (not always required but often desireable) and use the best leveraged software
Note Web Software tends to offer highest functionality as opposed to highest performance and HPCC often requires different trade-offs

HTML version of Scripted Foils prepared Sept 12 97

Foil 7 Synergy of InterNet and IntraNets

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 8 We have the Web Tools in Place - I !

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Web Technology is still uncertain and there may be major changes but "enough" capabilities are in place to build very general (~all) applications
  • MicroSoft v Sun / Netscape uncertainities
Rapidly evolving Standards and a mechanism to get rapid consensus
Fortran 77 -> Fortran90 --> HPF --> Fortran2000 (23 years)
VRML Idea (1994) --> VRML1 deployed (95) --> VRML2 deployed (early 97) (2.3 years)
  • VRML2 (3D datastructures and Java(Script) enabled methods) is more sophisticated than Fortran ?
  • Java development time was also fast compared to "traditional" standard adoption times

HTML version of Scripted Foils prepared Sept 12 97

Foil 9 We have the Web Tools in Place - II!

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Classic Web: HTTP Mime HTML CGI Perl etc.
Java and JavaScript Compiled to almost compiled (applet) to fully Interpreted Programming Language
VRML2 as a dynamic 3D Datastructure for products and their simulation object
Java Database Connectivity (JDBC) and general Web linked databases
Dynamic Java Servers and Clients
Rich Web Collaboration environment building electronic societies
Security -- still needs maturing as very clumsy or non existent at present in many cases
Compression/ Quality of Service for Web Multimedia
  • Do need higher bandwidth for real video although current POTS (perhaps ISDN needed) adequate for conferencing
Emerging Web Object model including integration of Corba (see JavaBeans and Orblets)

HTML version of Scripted Foils prepared Sept 12 97

Foil 10 Four Roles of Object Web Technologies in Computing

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
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
As above, but specifically build a metacomputing environment
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 Server based
  • By inheriting Object Web architecture, naturally track evolving and improving commodity technology base
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

HTML version of Scripted Foils prepared Sept 12 97

Foil 11 Some Tactical Opportunities of Object Web Technologies - I

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
So this is partly use of Object Web Software to build metacomputing systems of any architecture
Perhaps VRML or Java3D are important for scientific visualization
Web (including Java applets) front-ends provide convenient customizable interoperable user interfaces to HPCC facilities
Perhaps the public key security and digital signature infrastructure being developed for electronic commerce, could enable more powerful approaches to secure HPCC systems
Perhaps Java will become a common scientific programming language and so effort now devoted to Fortran and C++ tools needs to be extended or shifted to Java

HTML version of Scripted Foils prepared Sept 12 97

Foil 12 Some Tactical Opportunities of Object Web Technologies - II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
The universal adoption of JDBC (Java Database Connectivity) and the growing convenience of web-linked databases could imply a growing importance of systems that link large scale commercial databases with HPCC computing resources
Javabeans, RMI, COM, CORBA, IIOP form the basis of the emerging "pragmatic object web" which analogously to the previous bullet could encourage a growing use of modern object technology which will allow better managed distributed systems
Emerging collaboration and other distributed information systems could allow new (low end) distributed work paradigms which can be used in computational steering and for basic scientific research

HTML version of Scripted Foils prepared Sept 12 97

Foil 13 Some Classes of Applications

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
High end (today) to high end(tomorrow)
  • e.g. Astrophysics QCD .....
High end(today) to low end(tomorrow)
  • Today's supercomputer is tomorrow's PC
  • e.g. TeleImmersive Environments
Low end(today) to low end(tomorrow)
  • e.g. commerce, consumer market, education
Low end(today) to very low end (tomorrow)
  • e.g. email
The new application(s) we can't predict
1997
2007

HTML version of Scripted Foils prepared Sept 12 97

Foil 14 Inevitable Relevance of the Object Web

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Any large scale metacomputing/distributed computing environment will be shaped by and shape all 5 classes of applications on previous foil
Even if only aimed at high end applications, the system will be influenced by and influence the "Object Web" or "commodity software infrastructure" which is here defined as "mass-market"/business IntraNet (low to low) use of Internet/distributed Information System
Parallel Computing systems can be viewed as a special case of a Metacomputer
  • Perhaps one will need a stripped production environment for highest performance but
  • best program development environment is likely to be based on commodity technologies as can leverage and track wonderful software aimed at broad based distributed computing

HTML version of Scripted Foils prepared Sept 12 97

Foil 15 Structure(Architecture) of Applications - I

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

Foil 16 Structure(Architecture) of Applications - II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

Foil 17 HPCC Software issues

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
We can distinguish Decomposition and Integration
Decomposition is performed by an HPF or other Parallelizing compiler; or by a user writing a Fortran + Message Passing code "by hand"
MPI integrates decomposed parts together with high bandwidth latency constraints
Systems such as AVS integrate larger modules together and much of "software engineering" (modular style of programming) involved with this
Web is a powerful integration model suitable for large coarse modules with modest latency and sometimes modest bandwidth requirements
  • naturally "integrate" data(bases), people, computation together
Collaboration, computational steering, multidisciplinary science are all integration and not decomposition problems!

HTML version of Scripted Foils prepared Sept 12 97

Foil 18 Java for Scientific Computing Resource

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
See Original Foil

HTML version of Scripted Foils prepared Sept 12 97

Foil 19 One Strategy for a Object Web-based Metacomputing

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

Foil 20 A Web-based 3-Tier Computing System

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Middle Tier
Basic Web Server
Custom Web Server
TP Server
Business Transaction Management
You Write Software
at Client and Server
Old and New Useful Backend Software

HTML version of Scripted Foils prepared Sept 12 97

Foil 21 Web-Server based Metacomputer Capabilities at 3 levels

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
1:User View: Interoperable Web Interface accessing services through Java Compute Services Framework
2:Network of Java Servers provide distributed services with databases, compute engines, collaboratories, object brokers, instruments
  • All control at this level
  • Some coarse grain computing
Back end "Number Crunchers" linked either by communication at level 2 (slowish but easy) or at level 3 (high performance but more work)
Compute processes linked either to servers or together by MPI if parallel
Java Servers

HTML version of Scripted Foils prepared Sept 12 97

Foil 22 General Object Web based Middle Tier Server Architecture

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
We have a set of Services hosted by Object Web Servers which form the middleware and accessed by clients
Groups of clients (electronic societies) are linked by Java server based collaboration systems such as TANGO or Habanero
Access
Resources
Store
Multimedia Information
Collaboration Server
File Systems
and/or Database
Object Broker
Database
Simulation
e.g. NEOS
Netsolve
Computer
Person2
Shared
WhiteBoard
Shared Client Appl
Person1
General User

HTML version of Scripted Foils prepared Sept 12 97

Foil 23 Role of Collaboratory Systems

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Systems like Tango or Habanero built around Java Servers integrate a group of multiple clients as a "Service" at the middle Java Server level
Building systems in this way automatically includes "people in the loop" -- Computational Steering, Education, Multidisciplinary collaborative design
Group of collaborating clients
and client applications
Database
Object Broker
MPP

HTML version of Scripted Foils prepared Sept 12 97

Foil 24 There are (at least) 3 Major Roles for JAVA in Computation

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java for the User Interface: This is roughly the "WebWindows Philosophy" of building applications to Web Server/Client Standards
Java for Coarse Grain Software Integration: see collaboration and metacomputing
Java as a high performance scientific language: for "inner" (and outer) loops Here parallelism is important but sequential issues also critical and first issues to examine!

HTML version of Scripted Foils prepared Sept 12 97

Foil 25 The 3 Roles of Java

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 26 Java for Building User Interfaces

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
This is least controversial and is essentially WebWindows for User Interfaces
Fortran was never good at user interfaces!

HTML version of Scripted Foils prepared Sept 12 97

Foil 27 Summary of the VPL -- Virtual Programming Laboratory

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Initially Aimed at education where usability higher priority than performance
Teaching Java and JavaScript greatly aided by interpreted technology which allow integration of demonstrations into lectures
VPL aimed at allowing embedding of F90, HPF and MPI (etc.) examples in lectures and convenient support of homeworks for transient inexperienced users.
Features of VPL:
  • Text Editor and File Manager
  • Web Interface for compilation and job submittal with simple aids such as prompts on HPF syntax, choice of platform and automatic makefiles
  • Client side Java applets for Performance and Data visualization
  • Security mechanisms

HTML version of Scripted Foils prepared Sept 12 97

Foil 28 VPL 1.0 File Manager Screen

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Click on SnapShots in Virtual Programming Lab

HTML version of Scripted Foils prepared Sept 12 97

Foil 29 VPL 2D Graphics (VPLPlot 1.0) Samples Screen

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Click on SnapShots in Virtual Programming Lab

HTML version of Scripted Foils prepared Sept 12 97

Foil 30 Kivanc Dincer's Java FrontEnd to Pablo - I

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 31 Overview

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Scivis is a client-server (3-tier) data visualization and analysis system by taking full advantage of Java.
The purpose of this system is provide researchers with a customizable data analysis system to aid their research.
We also provide a collaborative framework, where the users can exchange data and their own personalized filters.
Available via http://kopernik.npac.syr.edu:8888/scivis
Contains over 29K lines of Java code (2K lines of user-definable filters).

HTML version of Scripted Foils prepared Sept 12 97

Foil 32 PPT Slide

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
A screen dump from a Scivis Session

HTML version of Scripted Foils prepared Sept 12 97

Foil 33 What is Relevance of VRML(2) for Scientific Computing?

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
VRML naturally gives 3D visualization with usual Web advantage of running on PC's and Workstations
Its universality implies can use in industry to specify products so can design, manufacture and market from the same(related) specification
Should impact PDES/STEP and such industry product specification standards
VRML will need extension to handle this but it is a good start and allows user defined types
VRML and Parallel Computing?
  • Breakup up a VRML image with INLINE construct to allow parallel rendering of complex images (i.e. parallel VRML viewer)
  • Invocation of parallel simulation programs as a VRML2 Script e.g. VRML2 cars invoke parallel crash codes when they hit each other!

HTML version of Scripted Foils prepared Sept 12 97

Foil 34 GIS integration with Weather Simulation application - II.

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
NPAC Web Based Geographical Information System in Stand Alone Mode
A GIS application is a specialized OpenInventor viewer, however it accepts any OpenInventor 2.1 scene model. That's why it's so easy to integrate it with third party applications, which produce IO/VRML output. The images show GIS integration with Weather Simulation application. A GIS viewer can also display animated objects controlled by Simulation Engine.

HTML version of Scripted Foils prepared Sept 12 97

Foil 35 Metacomputing with Web Architecture

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

Foil 36 Article on MIP Sucking Java Applets

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
http://www.packet.com/packet/ Hot Wired Tuesday January 7 Edition
Applet calculates pi while you read article!

HTML version of Scripted Foils prepared Sept 12 97

Foil 37 High Functionality Software Layer

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
This is "middleware" which is implemented in simplest form as a network of Java Servers
  • Web based distributed or Metacomputing based on linking mobile Web modules
  • Collaboration as in Habanero or Tango
  • Support services including databases, object brokers, instruments, MPP's etc.
Access
Resources
Store
Multimedia Information
Collaboration Server
File Systems
and/or Database
Object Broker
Database
Simulation (Network-enabled
servers such as NEOS, Netsolve)
Sequential
or Parallel
Computer

HTML version of Scripted Foils prepared Sept 12 97

Foil 38 Architecture of HPcc Commidity Technology High Performance Computing System

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 39 Proposed Approach to High Performance Messaging

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
As a first step, implement multi-module systems with each module linked via Java Servers
  • Modest performance (non - parallel) linkage with easy database, collaborative system etc. access
Where necessary "escape" down to classic HPCC technologies for data transport keeping control at server level
  • e.g. following foil illustrates this for a typical two module coupled CFD(fluids) and CSM(structures) problem
  • e.g. JDBC would access a parallel database in same way as sequential database at control level. However backend would implement "parallel query option" transparently to user.
This seems very convenient in JDK 1.1 "event model" which is mechanism used by Javabeans to communicate
  • this is illustrated in foil after next!

HTML version of Scripted Foils prepared Sept 12 97

Foil 40 Three Possible Implementations of CFD CSM Linkage

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

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

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

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

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
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 Sept 12 97

Foil 43 Web Architecture Supports Interpreted Environments

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Note Java also integrates compiled and interpreted approaches and so leads to more convenient programming environments
  • Develop and Test with Interpreters
  • Production Run with high performance using compilers and optimized libraries
JavaScript is a fully interpreted language but not really Java
Applets are half-way between traditional compiled and interpreted approaches
Web "systems" can behave like Interpreters with interactive commands at client (gives Web version of MATLAB)
Web Client
including
Java Applets
Web Server
Java/Fortran/C++
Application Backend

HTML version of Scripted Foils prepared Sept 12 97

Foil 44 Integrated Compiled and Interpreted Environments II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
User Interpreted Commands
invoking preloaded
Java/Javascript objects
Server invokes extrinsic
processor
(true interpreter
or compiler invoked
dynamically)
Running Program
interruptable at
extrinsic interfaces

HTML version of Scripted Foils prepared Sept 12 97

Foil 45 Use of PCRC Infrastructure -- The HPF front-end to produce an Integrated Environment for HPF Compiler and Interpreter

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Compiler offers:
  • performance
Interpreter offers:
  • interactive visualizations and data analysis
  • debugging
  • prototyping
  • dynamical software integration

HTML version of Scripted Foils prepared Sept 12 97

Foil 46 Architecture of the Integrated Interpreter/Compiler System

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
JAVA applet
HTTP
server
HPF
server
Node 1
Node 2
Node 3
Node 4
Node 5
Node 6
Web Browser
Server Host

HTML version of Scripted Foils prepared Sept 12 97

Foil 47 Switching between compiled and interpreted modes

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
1. Contact HTTP server to download the Java applet
2. Use the applet to start instrumented HPF application
3. HPF server starts (implemented as an HPF extrinsic)
4. Java applet establishes communication with the HPF server
5. HPF server accepts user's requests:
- suspend/resume execution of the HPF code
- send data
- interpret new HPF statements
- dynamically link and execute shared objects

HTML version of Scripted Foils prepared Sept 12 97

Foil 48 Use for Interactive Visualizations

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 49 Linkage of HPF Interpreter to Compiler

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
HPF statements and Visualization requests in Java, HPF etc.
HPF extrinsic procedure
Shared Object
Lexical Analysis: PCRC frontend.
HPF compilation: pghpf
Pool of shared objects
HPF RTS
HPF
server
Dynamical linking
Instrumented HPF
JAVA
applet

HTML version of Scripted Foils prepared Sept 12 97

Foil 50 Isn't the Web hardware and software too slow to be interesting for HPCC? -Java- II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Applications requires a range of capabilities in any language
High level ("Problem Solving Environment") manipulating"large" objects
  • Semi Interpreted (Java Applet) or Interpreted (Improved JavaScript)
Intermediate level Compiled Code targetted at "sequential" (multi-threaded) architecture
  • Existing Native Compiled Java using Simple types (arrays) for numerically intensive parts
  • Note as no pointers and no overloading of basic operators, Java code should be very efficient
Lower level runtime exploiting parallelism and memory hierarchies
  • "Hints" from higher level languages (in HPF style?) referencing highly functional efficient runtime optimized for high performance architectures
  • Requires extensions to both message passing and data parallel interfaces for whatever language one uses

HTML version of Scripted Foils prepared Sept 12 97

Foil 51 Hierarchy of Software Levels

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Numerical Objects in (C++/Fortran/C/Java)
Expose the Coarse Grain Parallelism
Expose All Levels of Memory Hierarchy
a) Pure Script (Interpreted)
c) High Level Language but Optimized Compilation
d) Machine Optimized RunTime
b) Semi- Interpreted
a la Applets
Memory Levels in High
Performance CPU
Nodes of Parallel/ Distributed System

HTML version of Scripted Foils prepared Sept 12 97

Foil 52 Example of WebFlow = AVS/Khoros using Web

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Simulation
Basic Display
Image Filter
is another
module
Output Display after Filter
Runs as a
parallel
module
using
Java Server
host

HTML version of Scripted Foils prepared Sept 12 97

Foil 53 WebFlow: Image Processing

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Bunch of Filters and Displays
defined in
Java Graph editor and
running on grid of Java Servers
Original Image

HTML version of Scripted Foils prepared Sept 12 97

Foil 54 Component Based Programming Environments

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Visual Basic/C++/J++ and ActiveX or Beanboxes with Javabeans give visual approach to software objects
  • specify properties and linkage
Enterprise Javabeans and COM are extending this to distributed computing
Using Web technologies for grid and building modules out of (whatever Javabeans/COM evolves to) allows one to deliver to user HPCC programming environments with comparable friendliness to those in PC world

HTML version of Scripted Foils prepared Sept 12 97

Foil 55 3 by 3 Diagram of Programming Environments versus System Complexity from PC to HPCC

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 56 Integration of Web with CORBA

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
New Java Frameworks (Enterprise, Media) bring new family of Java servers that can implement an object based middleware and backend layers for the Web based services including computing.
One critical development in the distributed objects domain is the IIOP (Internet Inter-ORB Protocol), mandatory in CORBA2 and offering a new server-to-server communication standard between commercial ORBs from various vendors.
At the moment, Web Server market is dominated by customized or/and proprietary systems but there is a new strong tendency to standardize the Web middleware around the CORBA paradigm.
'Java based ORB' is a CORBA2 compliant ORB written exclusively in Java, and hence fully portable and ready to run also on the Wintel platform, where distributed objects were so far under control of Microsoft COM/ActiveX model.

HTML version of Scripted Foils prepared Sept 12 97

Foil 57 Aspects of HPCORBA Architecture

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
The following figure illustrates a possible CORBA-HPCC integration framework ( HPCORBA )
Each node of a parallel machine runs a lightweight (e.g. Nexus based ) ORBlet which enables both local and remote object services.
Coming CORBA3/MOM based messaging and object-by-value frameworks adapted to provide high-performance (e.g. MPI based) object-oriented (IIOP based) inter-node communication.
Parallel Computation graphs are represented by Interface Definition Language (IDL) in a language independent way and optimized by parallel compiler technologies.
Specific language bindings would result in HPF, HPC++ or HPJava implementations.
This framework provides interoperability with the emergent Object Web software industry and offers an elegant solution for scalable parallel I/O ( linking HPCORBA with Oracle CORBA )

HTML version of Scripted Foils prepared Sept 12 97

Foil 58 Diagram of HPCORBA Architecture

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 59 Integration of DIS with Object Web Based Computing

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
DoD modeling 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.
We suggest that next step is to combine CORBA2 (Initial HLA/RTI is CORBA1) with NPS prototype ideas to give a fully object and Web integrated event driven simulation environment.
Java3D is natural visualization environment in this scenario

HTML version of Scripted Foils prepared Sept 12 97

Foil 60 Technology Convergence Roadmap - Overview for Forces Modeling, Integrated Modeling and Testing for DoD

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index

HTML version of Scripted Foils prepared Sept 12 97

Foil 61 New Java Frameworks for Advanced Web Services (I)

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
A large number of new Java APIs for advanced Web Services are emerging from JavaSoft and partners. Many current problems such as with the NPS WebDIS networking will be soon solved in a more robust, stable and elegant fashion by the new high-level APIs.
Java APIs are organized in Java Frameworks. Current list of frameworks include:
  • Java Applet Framework - base JDK1.0.2 packages such as java.lang, java.util, java.io, java.net and java.awt.
  • Java Enterprise Framework - JavaIDL (CORBA API), RMI (Remote Method Invocation a.k.a Java-to-Java custom (non-CORBA) ORB), JDBC (Java Database Connectivity), Java Serialization, Java Web Server.

HTML version of Scripted Foils prepared Sept 12 97

Foil 62 New Java Frameworks for Advanced Web Services (II)

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java Security Framework - support for authentication encryption, digital signatures.
Java Commerce Framework - Java Wallet, Java Cassettes (digital credit cards).
Java Beans Framework - componentware API with support for GUI negotiation and merging, persistence (JAR files), event filtering, introspection, visual application builders
Java Media Framework - Java2D (with Adobe), animation (with Macromedia), audio/video (with Intel), Java3D (with SGI), JSDA (Java Shared Data API).
All APIs listed are either already operational within JDK1.1, or still in works (spec only or alpha or beta release) but with the final release dates in 1997.

HTML version of Scripted Foils prepared Sept 12 97

Foil 63 Possible Java Frameworks for Computing

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Numerical Computing Framework
  • library interfaces, (sparse) matrix storage, complex, evaluation rules, IEEE floating point support, "BLAS"
Distributed Simulation Framework
  • Java implementations of DMSO HLA and DIS standards
Computing Services Framework
  • Enables Interoperable web compute interfaces
High Performance Framework
  • Parallel Computing, I/O, Databases, Object Brokers
  • Java MPI Interface
Distributed Computing Framework
  • Network of Java Servers

HTML version of Scripted Foils prepared Sept 12 97

Foil 64 Proposed Java Computing Services Framework

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Enables development of Web Interfaces to run a given job on any computer compliant with this framework just as JDBC gives a universal interface to any relational database
Compiling, Executing
Scheduling jobs as in Codine or LSF
Accessing and storing into File Systems
Visualization Interface (how applets access server side information)

HTML version of Scripted Foils prepared Sept 12 97

Foil 65 Implementation of a Java Computing Framework

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
The Computing Services Framework allows vendors to compete on User Front End (GUI) or back end services
The framework is implemented as a set of drivers which map generic Java Interfaces to particular software (e.g. a compiler) on particular machines.

HTML version of Scripted Foils prepared Sept 12 97

Foil 66 WebPersuasion -- Javabean Foilsets

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Although we have 384 foilsets imported to the Web -- this is not the correct way of doing it!
  • Microsoft's Word/Powerpoint Internet assistants are just temporary fixes as is my analogous Persuasion system!
Originally we thought a "Web Foil" is an enhanced HTML and we built a prototype using HotJava
However now believe this is not powerful and correct Web implementation of "foils" is a JavaBean stored as a serialized Java Object
  • Base on a powerful WhiteBoard built for next release of Tango

HTML version of Scripted Foils prepared Sept 12 97

Foil 67 Features of a JavaBean Foilset

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Start with a full drawing program supporting "art" and importing of images where basic entities are Java objects
Start with system integrated with Tango
Basic Unit is a "foil" -- typically NOT scrolled (but supporting this)
Foils are arranged into foilsets dynamically as in current WebWisdom and allow notes(addons) etc.
Import existing PowerPoint/Persuasion from "outline" text with automatic font size scaling
  • Note current WebWisdom records whether image has significant information not carried in text
Allow user to add highlighting and images "cut" from original screendump of PC foil

HTML version of Scripted Foils prepared Sept 12 97

Foil 68 Graphics in the New Tango white Board

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Latest Tango Capabilities June 97

HTML version of Scripted Foils prepared Sept 12 97

Foil 69 TANGOsim Collaboration/ Simulation/ Training in Java

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java is basis of Web Collaboration Systems with Applets Coordinated by Java Server
Habanero from NCSA was one of first
TANGOsim uses more modern Web Technology and incorporates a Discrete Event Simulator

HTML version of Scripted Foils prepared Sept 12 97

Foil 70 TANGO Collaboratory

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
TANGO is a software framework supporting computer-based communication and collaboration
  • Initial design and implementation for Command and Control under a DoD contract
  • Runs in Web environment and uses standard Web technologies
  • Allows for implementation of arbitrary collaboratory applications (examples will follow)
  • Multiplatform run-time and multi-language API
    • UNIX/Windows; Java (applet or application), C, C++, JavaScript, VRML2

HTML version of Scripted Foils prepared Sept 12 97

Foil 71 TANGO Collaboration Model

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
TANGO supports client side electronic societies of people, instruments and their applications.
TANGO links these to a network of Java Servers which manage TANGO sessions and interfaces them to the world wide Server Infrastructure that underlies our model of Web applications
  • TANGO does not directly manage world wide servers
Electronic societies or groups are managed by core database in TANGO

HTML version of Scripted Foils prepared Sept 12 97

Foil 72 Role of Collaboratory Systems

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Systems like Tango or Habanero built around Java Servers integrate a group of multiple clients as a "Service" at the middle Java Server level
Group of collaborating clients
and client applications
Database
Object Broker
MPP

HTML version of Scripted Foils prepared Sept 12 97

Foil 73 TANGO: Highlights

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Technically, TANGO is a distributed system based on event broadcasting
  • TANGO does not implement collaborative transparency, although current design allows for it for certain applications
Core system is implemented in Java and as a browser plug-in
Base programming module is a Java applet
  • however, other shared entities supported as well, including Java, C/C++ applications, and JavaScript/VRML 2 modules

HTML version of Scripted Foils prepared Sept 12 97

Foil 74 Tango Screen: Talking Heads and White Board

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
From Tango - A Java/WWW-Based Internet Collaborative Software System part of NPAC Overview May 1997

HTML version of Scripted Foils prepared Sept 12 97

Foil 75 Tango Screen: Physics Applets -- Cross Product, Planets and Neural Network

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
From Tango - A Java/WWW-Based Internet Collaborative Software System part of NPAC Overview May 1997

HTML version of Scripted Foils prepared Sept 12 97

Foil 76 TANGO: Highlights II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Global architecture is a mesh of servers
  • migration via hand-off mechanism (work in progress)
Session metaphor is a meeting room with tools
  • a more flexible "application session" model has been shown indigestible for many early users
Asynchronous collaboration is (will be) enabled via session recording to database backend
TANGO modules can be downloaded from anywhere
  • can interact via a server at arbitrary location

HTML version of Scripted Foils prepared Sept 12 97

Foil 77 TANGO: Control Application

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Application select
buttons
Application
Domains
Open/close and
floor control
Session
information
User information

HTML version of Scripted Foils prepared Sept 12 97

Foil 78 TANGO: application control

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
TANGO session, sync, and
floor control buttons built
into the application control
panel.

HTML version of Scripted Foils prepared Sept 12 97

Foil 79 TANGO Applications

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Generic tools: chats (1D, 2D, 3D*), whiteboards (paint and draw)
Multimedia tools: audio/video conferencing, collaborative indexed streaming video
Shared browsers: slide shows, fully synchronized, shared JavaScript, customizable client-side apps
Virtual University: WebWisdom - interactive contents delivery system, a set of applets for physics curriculum
Domain specific applets: 2D and 3D (collaborative VRML) Visible Human, collaborative AutoCad (feasibility study only)

HTML version of Scripted Foils prepared Sept 12 97

Foil 80 TANGO: Status

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Core system implemented by a team of 3 programmers within ~6 months, available.
  • TANGO server for Unix and Windows NT
  • TANGO Plug-ins for Wndows95/NT, IRIX, Solaris
APIs for Java, C/C++, and JavaScript available
Two generations of GUI implemented
"Lessons learned" are being incorporated into TANGO II, scheduled for release end of October
  • new sessions paradigm, database support, multi-server support

HTML version of Scripted Foils prepared Sept 12 97

Foil 81 Collaboratory systems: Taxonomy I

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Basic architectures
  • Shared display: single instance of application, user input & display replicated via conference agent
    • Entire functionality of application is shared
    • Examples: Shared X (HP), NetMeeting (MS), ProShare (Intel), ShowMe (Sun), Timbuktu (Farallon)
    • Advantages: simple to implement
    • Disadvantages:
      • functional: simplistic, inflexible, awkward session control model, insecure (no data access control), no support for asynchronous collaboration, race condition problems
      • performance: generate heavy data traffic, unacceptable on WANs
      • incompatible with Web programming model assuming local intelligence

HTML version of Scripted Foils prepared Sept 12 97

Foil 82 Collaboratory systems: Taxonomy II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Basic architectures
  • Event broadcasting: each workstation runs its own copy of application.
    • (A) Virtual instance: all events shared (collaboration transparency)
    • (B) Independent data views: some events shared
    • Examples: Habanero (NCSA - B), Java Collab. Toolset (Old Dominion - A ), ProMondia (Univ. of Nuremberg - B), UARC (Univ. of Michigan - B), TANGO (NPAC - B)
    • Disadvantages: new category of SW, difficult to implement
    • Advantages: infinitely flexible and adaptable, generates little network traffic, perfectly fit Web/Java paradigm, can implement security, can support asynchronous collaboration....

HTML version of Scripted Foils prepared Sept 12 97

Foil 83 Event Broadcasting: con and pro

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Sharing possible only if applications deterministic
  • applications ARE deterministic or can be made so
Copies of applications must be present everywhere
  • but they are, being applets or downloaded via a push channel
Environments must be identical
  • Java VM takes care about this
Initial state of a newcomer impossible to define
  • not so for good OO design and object serialization mechanism
Cannot maintain consistency among copies
  • Difficult but not Impossible. Variety of sync mechanisms available
The pros win! Web model enables event broadcasting!

HTML version of Scripted Foils prepared Sept 12 97

Foil 84 Typical Web Collaboration Architecture

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
TANGOsim
Basic
Replicated Applications
1)Virtual Users 2)Customized Views

HTML version of Scripted Foils prepared Sept 12 97

Foil 85 The TANGOsim C2 Application

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
TANGO Java
Collaboratory
Server
HTTP
Server
MultiMedia Mail
C2 Commander
Chat
VTC
Event Driven
Simulation
Engine
C2 Radar Officer
3D GIS
Scripting
Language
C2 Weather Officer
Message Routing
SW/Data Distrib.
Other
Collaborators
MultiMedia Mail
Chat
Simulation
Engine Controller
All Clients
Typical Clients

HTML version of Scripted Foils prepared Sept 12 97

Foil 86 Command and Control Screen with Multimedia Message

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Feb 97 Demonstration of Tango

HTML version of Scripted Foils prepared Sept 12 97

Foil 87 A demo of animated objects controlled by simulation engine of Tango collaborative system - III

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
From Tango Project for CEWES Collaborative Tool Meeting

HTML version of Scripted Foils prepared Sept 12 97

Foil 88 TANGO Structure of Multidisciplinary Applications

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
TANGO links people and shared applications such as chat board, audio video conferencing, visualizations, shared white board, common AUTOCAD design and related tools
CFD
TANGO Server
Database
Object Broker
MPP
Structures
MPP
Engineer
+ core
services
Visualization e.g.CAVE
Shared AutoCAD
Engineer
+ core
services

HTML version of Scripted Foils prepared Sept 12 97

Foil 89 Minimal Web based Multidisciplinary Application

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
This combines TANGO for collaboration with WebFlow to link server side applications
If necessary WebFlow would support high performance inter-module communication as in structures-CFD Linkage example but it would always implement control and this allows TANGO integration with server side computation
  • So we suggest change in usual HPCC integration model to move control to server level so that coupled applications can be directly integrated with services such as TANGO, databases ....
WebFlow communication model is a dynamic dataflow
Of course other server side compute models are possible and in general need (web-linked) data bases, file systems, object brokers etc.,

HTML version of Scripted Foils prepared Sept 12 97

Foil 90 Comparison of Communication/Linkage Models

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
WebFlow supports dataflow model where user must supply routines to process input of data that drives module and output of data for other modules
TANGO supports shared state and user supplies routines that read or write either
  • Total state of application or
  • Change in state of application
Can be done for applications like AUTOCAD as vendor supplies necessary API
CFD
Structures

HTML version of Scripted Foils prepared Sept 12 97

Foil 91 General Web Architecture

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
We have a set of Services hosted by Web Servers and accessed by clients
Groups of clients (electronic societies) are linked by collaboration systems such as TANGO
Access
Resources
Store
Multimedia Information
TANGO Server
File Systems
and/or Database
Object Broker
Database
Simulation
Computer
Person2
Shared
WhiteBoard
Shared Client Appl
Person1
General User

HTML version of Scripted Foils prepared Sept 12 97

Foil 92 TANGOsim for Distributed Simulation and Computational Steering - I

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Clearly Java Collaboration Systems are natural implementations of general environments that mix computers and people
Computational Steering -- a simulation is like a participant in a Tango session which has
  • simulation engine
  • visualization subsystem
  • one of more computaional scientists
Need to link to Tango, Java data analysis/visulaization front ends as well as distributed resource management systems such as ARMS from Cornell

HTML version of Scripted Foils prepared Sept 12 97

Foil 93 TANGOsim for Distributed Simulation and Computational Steering - II

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Note synergy with Java Server based distributed computing such as WebFlow which builds an AVS like environment with graphical interfaces to software Integration
More ambitious to upgrade discrete event simulation component of TANGOsim to support full SIMNET/DSI (Distributed Simulation Internet) functionality.
Note that Java is natural language for DSI/Forces Modelling because these typically use object parallelism which fits both language and applet/JavaBean capabilities.
See discussion in http://www.npac.syr.edu/projects/javaforcse

HTML version of Scripted Foils prepared Sept 12 97

Foil 94 Architecture of JSU Distance Education

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Participants at JSU
Teacher/Lecturer at NPAC

HTML version of Scripted Foils prepared Sept 12 97

Foil 95 Java as the Language for Computational Kernels!

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java for User Interfaces and MetaComputing is natural from its design!
Java for your favourite Conjugate Gradient routine (etc.) is less obvious .....

HTML version of Scripted Foils prepared Sept 12 97

Foil 96 Some Critical Features of Java as a Programming Language

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java likely to be a dominant language as will be learnt and used by a broad group of users
  • We have taught 3 full courses and several tutorials
  • Popular as widely applicable (growing number of API's etc.) and one gets good graphics outpiut easily.
  • Further can use Web to exchange results of your program with peers
  • Expect to be very effective in middle and high school programming
  • Kids will come to University and jobs knowing and expecting to use Java
    • They will not accept Fortran as unfamiliar and less attractive
    • They may accept C++ as a later more complicated language
    • The bottom up revolution!
Java may replace C++ as major system building language
  • Perhaps greater functionality (e.g. pointers) of C++ critical although "WebWindows" favors Java
  • but this is not topic today!

HTML version of Scripted Foils prepared Sept 12 97

Foil 97 Comparison of Java and Fortran 77/90

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Clearly Java can easily replace Fortran as a Scientific Computing Language as can be compiled as efficiently and has much better software engineering (object) and graphics (web) capabilities
  • Fortran90 is object oriented but very small user base and not clear if will replace Fortran77
  • Note Fortran90 discussion started in 1978 (after Fortran77 agreed) and took fourteen years and even now Cray's Fortran77 compiler is (on C90 for numerical relativity) much better than their Fortran90 compiler.
  • Originally Fortran90 (as Fortran8X) was designed precisely for Cray architecture systems!
  • This illustrates that informal standards activities (as in the Web and HPF) are most appropriate for rapidly changing technologies
Java can unify classic science and engineering computations with more qualitative macroscopic "distributed simulation and modelling" arena which is critical in military and to some extent industry

HTML version of Scripted Foils prepared Sept 12 97

Foil 98 Java Links the Bottom and Top of Pyramid

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Key question is performance of Java
Note Web Software can be run on High Performance IntraNets such as Iway so hardware need NOT be a problem!

HTML version of Scripted Foils prepared Sept 12 97

Foil 99 Isn't the Web hardware and software too slow to be interesting for HPCC? -Java- I

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java is currently semi-interpreted and (as in Linpack online benchmark) is about 50 times slower than good C or Fortran
  • http://www.netlib.org/benchmark/linpackjava/
Java --> (javac)--> Downloadable Universal Bytecodes --> (Java Interpreter)
--> Native Machine Code
  • Just in Time Compilers speed this up by factor of 10
However Language can be efficiently compiled with "native compilers"
Java ----> (native compiler)
---> Native (for Particular Machine) Code
Lots of Interesting Compiler issues for both compiled and scripted Java

HTML version of Scripted Foils prepared Sept 12 97

Foil 100 Performance of Java is Dreadful!

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
My SGI INDY gets .54 Megaflops for Java 100 by 100 Linpack
It has 200 Mhz R4400 and current Netlib benchmark for this chip is 32 mflops for optimized Fortran
For better resolution see JPEG Version

HTML version of Scripted Foils prepared Sept 12 97

Foil 101 LinPack Java Performance Updated to Sept 30 1996

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
see http://www.netlib.org/benchmark/linpackjava/
Note Just in Time Compilers are giving a factor of 10 from June 96 Measurements!

HTML version of Scripted Foils prepared Sept 12 97

Foil 102 LinPack Java Performance Updated to June 3 1997

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
see http://www.netlib.org/benchmark/linpackjava/

HTML version of Scripted Foils prepared Sept 12 97

Foil 103 What Limits Performance of Compiled Java?

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Syracuse and Las Vegas Workshops saw no serious problem to High Performance Java on sequential or Shared Memory Machines
Some restrictions are needed in programming model
  • Cynic says write in Fortran with Curly Brackets but more seriously restrictions requires programming discipline but still exploit key advantages of Java
For instance, Avoid Complicated Exception handlers in areas compilers need to optimize!
Should be able to get comparable performance on compiled Java C and Fortran starting with either Java Language or JavaVM bytecodes
The Interpreted (Applet) JavaVM mode would always be slower than compiled Java/C/Fortran -- perhaps by a factor of two with best technology

HTML version of Scripted Foils prepared Sept 12 97

Foil 104 Isn't the Web hardware and software too slow to be interesting for HPCC? -Java- III

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
One can use "native classes" which is just a predownloaded library of optimized runtime routines which can be high performance compiled Java, C, C++, Fortran, HPF etc. modules invoked by interpreted or compiled Java
  • This does NOT violate Web Philosophy in our opinion!
Use Native Classes selectively for
  • Compiler Runtime, Matrix Primitives, Image Processing and other engineering/science libraries,
  • PDE primitives such as mesh generators,
  • optimization as needed in resource management or applications

HTML version of Scripted Foils prepared Sept 12 97

Foil 105 Classes of Simulations and their High Performance Needs

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
1)Classic solution of large scale PDE or Particle dynamics problem
  • Data parallelism over grid points or particles
2)Modest Grain size Functional Parallelism as seen in overlap of communication and computation in a node process of a parallel implementation.
  • More generally overlap of I/O -- disk,visualization -- and computation
3)Object parallelism seen in Distributed Simulation where "world" modelled (typically by event driven simulation) as set of interacting macroscopic (larger than grid points) objects
  • Objects are weopens, military units etc. in SIMNET/DSI (Forces Modelling)
4)MetaProblems consisting of several large grain functionally distinct components such as
  • Structural Analysis, Airflow, Manufacturing Process, Pricing, Controls etc. in MDO approach to manufacturing and design
  • more generally are components of a Problem Solving Environment
Java: 1) Not Supported, 2) is Thread mechanism, 3) is Java Objects or Applets, 4) is JavaBeans or equivalent
Fortran: 1)is supported in HPF, 2--4) are not supported

HTML version of Scripted Foils prepared Sept 12 97

Foil 106 Java and Parallelism?

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
The Web integration of Java gives it excellent "network" classes and support for message passing.
Thus "Java plus message passing" form of parallel computing is actually somewhat easier than in Fortran or C.
Coarse grain parallelism very natural in Java
"Data Parallel" languages features are NOT in Java and have to be added (as a translator) of HPJava to Java+Messaging just as HPF translates to Fortran plus message passing
Java has built in "threads" and a given Java Program can run multiple threads at a time
  • In Web use, allows one to process Image in one thread, HTML page in another etc.
Can be used to do more general parallel computing but only on shared memory computers
  • JavaVM does not support distributed memory systems

HTML version of Scripted Foils prepared Sept 12 97

Foil 107 "Pure" Java Model For Parallelism

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Combine threads on a shared memory machine with message passing between distinct distributed memories
"Distributed" or "Virtual" Shared memory does support the JavaVM as hardware gives illusion of shared memory to JavaVM
Message Passing
Message Passing

HTML version of Scripted Foils prepared Sept 12 97

Foil 108 Mechanisms for Data Parallelism in HPJava

From General NPAC Foils-B starting June97(PowerPoint) ParCo Conference Bonn -- Sept 16,97. *
Full HTML Index
Java Wrappers (native classes or Server socket connections) around existing data parallel Fortran or C++
Native Java and MPI
  • Need Java MPI Interface as part of framework
Data Parallel Extensions of Java
  • Natural extensions of HPF and HPC++
  • Note one of the best C++ mechanisms (standard template library) doesn't work in Java
Java threads for data parallelism on SMP's

© 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 Thu Jan 8 1998