Full HTML for

Scripted foilset Overview of Parallel Compiler Runtime Consortium Activities

Given by Geoffrey C. Fox at ARPA Environments PI Meeting Washington on June 9-10 97. Foils prepared 6 July 97
Outside Index Summary of Material


This describes overall goals of PCRC and
Statement of Problem, approach, Results, Collaboration with China
3 Examples of Future activities are:
  • WebFlow Web based software Integration for PCRC modules
  • HPF Interpreter with Java FrontEnd
  • Linkage to DoD Simulation Community
We did not describe the older technologies:
  • HPF Front End and Tester
  • The Runtime Infrastructure

Table of Contents for full HTML of Overview of Parallel Compiler Runtime Consortium Activities

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Parallel Compiler Runtime Consortium
2 Parallel Compiler Runtime Consortium
3 Common Runtime Support for High Performance Languages
4 Statement of Problem and Proposed Solution!
5 Innovations in Project
6 Technology Impact
7 Future Activities
8 International Collaboration
9 WebFlow Software Integration Model
10 WebFlow Integration
11 WebFlow and PCRC
12 General Web Integration Model
13 Common Runtime Support for High Performance Languages-1
14 Integrated Compiled and Interpreted Environment
15 Integrated Compiled and Interpreted Environments II
16 Use of PCRC Infrastructure -- The HPF front-end to produce an Integrated Environment for HPF Compiler and Interpreter
17 Architecture of the Integrated Interpreter/Compiler System
18 Switching between compiled and interpreted modes
19 Use for Interactive Visualizations
20 Linkage of HPF Interpreter to Compiler
21 Integration of Classic HPCC with DoD Modeling and Simulation
22 Technology Convergence Roadmap - Overview for Forces Modeling, Integrated Modeling and Testing for DoD
23 DIS Distributed Event Driven Simulation Web Prototype at NPS 1997
24 Architecture of the WebDIS Prototype at the NPS - Overview
25 Details of the WebDIS Prototype at the NPS
26 The Next Big Web Technology Advance: Object Web and CORBA
27 CORBA Web Architecture
28 Aspects of Java ORB based Middleware
29 Integration of DIS with Object Web Based Computing
30 Aspects of Object Web based HPCC
31 Aspects of HPCORBA Architecture
32 Diagram of HPCORBA Architecture
33 Common Runtime Support for High Performance Languages-2
34 PCRC HPC Infrastructure
35 HPFfe: Front-end for HPF
36 HPFtester-1
37 HPFtester-2
38 PCRC Runtime: MPI-Based

Outside Index Summary of Material



HTML version of Scripted Foils prepared 6 July 97

Foil 1 Parallel Compiler Runtime Consortium

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Presentation on June 10 1997 by Geoffrey Fox at DARPA Systems Environments PI Meeting
gcf@npac.syr.edu Phone 3154432163
http://www.npac.syr.edu/users/gcf/pcrcjune97 (this talk)
http://www.npac.syr.edu/projects/pcrc
http://www.npac.syr.edu/projects/javaforcse (resource for Java in Computational Science and Engineering)
http://www.npac.syr.edu/users/gcf/PCRCWebFlow/script.html (demonstration available in videotape)
Parallel Compiler Runtime Consortium

HTML version of Scripted Foils prepared 6 July 97

Foil 2 Parallel Compiler Runtime Consortium

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
University of Texas
Austin
Cooperating
Systems
Corporation
Indiana University

HTML version of Scripted Foils prepared 6 July 97

Foil 3 Common Runtime Support for High Performance Languages

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
CRS for Irregular Distributed Arrays (Maryland)
Rice
Syracuse
CSC
Indiana
HPF Compilers
HPC++ Compilers
Retargeting Existing Compilers
Developing New Compilers
Harvard
Other Compilers
Common computational functions (SU)
Common data movement routines (SU)
CRS for Regular Distributed Arrays (Syracuse)
Common Runtime System Interface (Indiana)
Common code and data descriptors for arrays in HPC languages
Common compiler data movement interface specifications
Other
CRS Inter-operability
with other RTS
(Maryland/
Indiana)
Address translation mechanisms (UoM)
Common data movement deriving and optimizing routines (IU)
Rochester
Texas (DAGH)
http://www.npac.syr.edu/
Other
Rochester
Future Compilers
HPJava

HTML version of Scripted Foils prepared 6 July 97

Foil 4 Statement of Problem and Proposed Solution!

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
http://www.npac.syr.edu/projects/pcrc/
Problem: Compilers and other major HPCC software systems involve so much software that it is hard for typical academic groups to contribute deployable systems
Solution(Significance of Project): Enable Production of high quality and high functionality HPCC programming environments by developing public domain documented software infrastructure for HPF, and parallel C++ and Java in compiled or SPMD mode

HTML version of Scripted Foils prepared 6 July 97

Foil 5 Innovations in Project

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Community Driven Investigation of sequential and parallel Java as a scientific and engineering programming language
  • Second June 21 Workshop at PPoPP has &#06250 attendees
New algorithms and high performance implementations for combine, scatter runtime
High level SPMD Programming Model above MPI
New approaches to integrating HPF, C++, Java in interpreted and compiled modes using Web technology
New ways of detecting optimal collective communication needed by HPF statements
Compiler front end test suite

HTML version of Scripted Foils prepared 6 July 97

Foil 6 Technology Impact

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Over 100,000 lines of C/C++ public domain software directly produced by project and divided between
  • HPF2.0 and Java Compiler front end
  • partial HPF compiler
  • Multi-language regular runtime
Test suites for HPF Compiler front-end and for its implementation (set of base HPF codes)
Integration with DAGH, HPC++ and metachaos (most of this funded outside PCRC)

HTML version of Scripted Foils prepared 6 July 97

Foil 7 Future Activities

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Several approaches to "HPJava" on both distributed and shared memory architectures
Integration of Interpreters and Compilers using PCRC infrastructure (see example)
Other compilers (such as shpf in Europe) use infrastructure
WebFlow with graphical interface for integration of multi-language and multi-function modules (see example)
Bridge to simulation community (HLA and DIS) using common object(CORBA) web server technology

HTML version of Scripted Foils prepared 6 July 97

Foil 8 International Collaboration

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Significant part of public domain software has been produced by Xiaoming Li's collaborators in computer science departments at Harbin Institute of Technology and Peking University
In exchange NPAC has taught computational science courses in workshops in China and with Internet course to Harbin
  • Tutorial material NPAC course material, HPF and MPI definitions has been translated into Chinese HTML and distributed freely with over 1000 CDROMS with 38 megabytes for a 2 semester course
http://www.npac.syr.edu/projects/pcrc/cpswt/index.htm

HTML version of Scripted Foils prepared 6 July 97

Foil 9 WebFlow Software Integration Model

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Could Evolve to general component based HPCC visual programming environment
Natural Technology for Collaborative Computing and Multidisciplinary Applications

HTML version of Scripted Foils prepared 6 July 97

Foil 10 WebFlow Integration

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
WebFlow gives an AVS like Interface to integrate multilanguage modules

HTML version of Scripted Foils prepared 6 July 97

Foil 11 WebFlow and PCRC

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
A C++ PCRC SPMD Physics simulation is linked with disparate modules to filter output display
This demo is available on a video tape and with RealAudio narration

HTML version of Scripted Foils prepared 6 July 97

Foil 12 General Web Integration Model

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
This model can be combined with emerging Web Collaboration, Object broker and database capabilities to support multidisciplinary applications and computational steering

HTML version of Scripted Foils prepared 6 July 97

Foil 13 Common Runtime Support for High Performance Languages-1

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Distributed Array Descriptor Specification
  • Common code and data descriptors for arrays in HPC languages
  • Address translation mechanisms
  • Distributed Feb 1996 for review by PCRC members
Common Runtime Interface Specification
  • Common computational functions
  • Common data movement routines
  • Available June 1996

HTML version of Scripted Foils prepared 6 July 97

Foil 14 Integrated Compiled and Interpreted Environment

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Uses a Java Front End and shows how data parallel Java could be implemented as with HPF back-ends
One can invoke general client side (visualization) or server side (additional simulations) at HPF Extrinsic Interfaces
Uses PCRC HPF Front End

HTML version of Scripted Foils prepared 6 July 97

Foil 15 Integrated Compiled and Interpreted Environments II

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 6 July 97

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

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 6 July 97

Foil 17 Architecture of the Integrated Interpreter/Compiler System

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 6 July 97

Foil 18 Switching between compiled and interpreted modes

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 6 July 97

Foil 19 Use for Interactive Visualizations

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index

HTML version of Scripted Foils prepared 6 July 97

Foil 20 Linkage of HPF Interpreter to Compiler

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 6 July 97

Foil 21 Integration of Classic HPCC with DoD Modeling and Simulation

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
The Emerging object Web offers opportunity to integrate time stepped and event driven methodologies

HTML version of Scripted Foils prepared 6 July 97

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

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index

HTML version of Scripted Foils prepared 6 July 97

Foil 23 DIS Distributed Event Driven Simulation Web Prototype at NPS 1997

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
There is a web-based DIS project at the Naval Postgraduate School (NPS) at Monterey, CA, led by Don Brutzman who is NPS faculty, member of VRML Consortium and Moderator of newly formed dis-java-vrml mailing list.
The goal of the project is to explore Java for DIS protocol implementation and networking, VRML2 for visualization of the simulated virtual DIS worlds, and Web browsers for the GUI packaging and integration.
The current NPS experiment uses exclusively Java, VRML and HTML to implement a proof-of-the-concept demo. In a more complete Web DIS, the actual simulation engines will be likely provided by the optimized legacy codes, suitably interfaced to Java based communication and VRML based rendering.

HTML version of Scripted Foils prepared 6 July 97

Foil 24 Architecture of the WebDIS Prototype at the NPS - Overview

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index

HTML version of Scripted Foils prepared 6 July 97

Foil 25 Details of the WebDIS Prototype at the NPS

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Front-end is provided by Netscape running one vehicle simulation applet on each node and by Cosmo Player VRML2 browser displaying the multi-vehicle simulated world.
Java applet propagates local vehicle and communicates via the bridge daemon with other nodes, sending local vehicle PDUs and reading remote vehicles PDUs.
Java applet and VRML browser interact via EAI (External API) as specified by SGI/Cosmo Player add-on to the VRML2 protocol. JavaScript is used to acquire handle to the VRML scene and LiveConnect is used to pass this handle to the Java applet.
Applet performs dynamic real-time updates of the scene graph based on local vehicle simulation and remote vehicle locations received via PDUs.
This prototype is successful and demonstrates that one can use Web technology for Distributed Event Driven Simulation -- the major use of simulation in DoD

HTML version of Scripted Foils prepared 6 July 97

Foil 26 The Next Big Web Technology Advance: Object Web and CORBA

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Web'97 is already quite elaborate at the client/browser side but still rather simplistic at the server side (base HTTP with CGI extensions).
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 DCOM/ActiveX model.

HTML version of Scripted Foils prepared 6 July 97

Foil 27 CORBA Web Architecture

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index

HTML version of Scripted Foils prepared 6 July 97

Foil 28 Aspects of Java ORB based Middleware

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
The new emergent Object Web framework includes Web servers in the middleware, Java applets in the front-end and Java ORBs on both sides.
Client-side ORB (or ORBlet) can be either downloaded as part of the applet, or resident on the client host, or embedded in the browser (as planned by Netscape).
Applet downloads via HTTP and connects via ORBlet's IIOP to a middleware ORB. This middleware ORB can be either another server or part of the Web server.
Middleware ORB connects via IIOP to other ORBs on the CORBA bus. This mechanism enables global connectivity via CORBA white/yellow page services such as Naming Service or Trader Service and their federations.
Client-side ORBlet is also a lightweight server - hence clients can be called by servers via the CORBA callback mechanism. This enables interactive feedback, asynchronous notification and a variety of collaboratory frameworks over the CORBA bus.

HTML version of Scripted Foils prepared 6 July 97

Foil 29 Integration of DIS with Object Web Based Computing

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 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 6 July 97

Foil 30 Aspects of Object Web based HPCC

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Our HPCC Server model is consistent with the Object Web trends
The servers provide high functionality CORBA2 services with an event based control mechanisms
A new HPCORBA data transfer layer implements high performance object method invocations
Current WebFlow functionality, limited to classical dataflow, can be extended to support also visual authoring of CORBA business objects and in a component based software approach, WebFlow will be a CORBA vertical framework aimed at distributed computing.
JavaBeans are the base software components which have a visual programming model which links ideas in systems such as Hence CODE AVS WebFlow with modern software engineering practice.
In summary, we propose HPCORBA based WebFlow with JavaBeans front-ends as an effective delivery platform for integrating HPCC and DoD Modeling, Simulation and Testing environments with modern high productivity software development environments.

HTML version of Scripted Foils prepared 6 July 97

Foil 31 Aspects of HPCORBA Architecture

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 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 6 July 97

Foil 32 Diagram of HPCORBA Architecture

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index

HTML version of Scripted Foils prepared 6 July 97

Foil 33 Common Runtime Support for High Performance Languages-2

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Multi-Runtime Library Interoperability Specification
  • Common data movement deriving and optimizing routines
  • Common compiler data movement interface specifications
Advanced Compiler Development
  • Retargeting compilers
  • Base HPF 1.0 fe and compiler testbed
  • DT&E (Development Testing and Evaluation) URL available upon request

HTML version of Scripted Foils prepared 6 July 97

Foil 34 PCRC HPC Infrastructure

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
HPFfe: A front-end for HPF 1.0
HPFtester: a comprehensive test-suite for HPF frontend validation
HPFrt: an MPI-based runtime system for HPF compilers

HTML version of Scripted Foils prepared 6 July 97

Foil 35 HPFfe: Front-end for HPF

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Full HPF 1.0 syntax support (including full Fortran 90)
Four modules: syntax parsing, semantics checking, IR rendering, and unparsing
Extensive semantics checking
Validated by HPFtester
Releasable to Public Domain

HTML version of Scripted Foils prepared 6 July 97

Foil 36 HPFtester-1

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Simple test segment:
  • Each program verifies targeted language features
  • Fifty small programs (1,000 LOCs)
Comprehensive test segment:
  • Exhaustive first-order syntax tests
  • Every grammar rule and associated right-hand options
  • Nine programs (3,000 LOCs)

HTML version of Scripted Foils prepared 6 July 97

Foil 37 HPFtester-2

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Invalidation test segment:
  • Seeded syntactic and semantic errors
  • Fifty programs (1,000 LOCs)
HPFtester Augmentation segments:
  • Typical F90 programs: Migrating to Fortran 90 by Kerrigan (fourteen programs, 1,250 LOCs)
  • Real HPF programs: developed by blackhole community (thirty-six units, 1,500 LOCs)
  • Real F90 application: NAG Runge-Kutta solver (nine programs, 4,000 LOCs)

HTML version of Scripted Foils prepared 6 July 97

Foil 38 PCRC Runtime: MPI-Based

From Overview of Parallel Compiler Runtime Consortium Activities ARPA Environments PI Meeting Washington -- June 9-10 97. *
Full HTML Index
Regular (based on Syracuse Fortran 90D runtime)
  • Collective communication functions
  • Transformational computational functions
  • Index mapping functions
  • Data movement functions
Irregular (based on Maryland Chaos)
  • Communication scheduler
  • Efficient gather/scatter

© 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 Aug 10 1997