Full HTML for

Basic foilset Java Grande in a Nutshell

Given by Geoffrey C. Fox at EuroPar Java Grande Workshop on September 2-3 1998. Foils prepared September 13 1998
Outside Index Summary of Material


We describe Java Grande Forum -- motivation and current status
  • motivation discusses Java as a language and where it is clearly good and where it could be good!
  • This has numerical and distributed computing working groups and one project is a community activity to define
Seamless interfaces allowing universal access to general hosts
  • can be CORBA facility or Java framework

Table of Contents for full HTML of Java Grande in a Nutshell

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Java Grande in a Nutshell
2 Abstract of EuroTools Java Grande Presentation
3 Why is Java Worth Looking at?
4 What is Java Grande?
5 What is the Competition?
6 Why could Java succeed where Fortran and C++ failed?
7 Synergy of Parallel Computing and Web Internetics as Unifying Principle
8 The 3 Roles of Java
9 Java and multi-tier Grande Systems
10 What is Goal of Java Grande Forum?
11 Two types of Things we are doing
12 Activities of the Java Grande Forum I
13 Gosling on Operator Overloading
14 Activities of the Java Grande Forum II
15 Where are we now?
16 Java Seamless Computing Framework or CORBA Facility for Computation
17 What/Why is a Framework?
18 JDBC Database Framework Architecture
19 Proposed Java Computing Services Framework I
20 Proposed Java Computing Services Framework II
21 Possible Services in a Java Computing Framework - I
22 Possible Services in a Java Computing Framework - II
23 What should you do as a Java Grande believer?
24 Multi Tier Gateway Architecture
25 Multi-Server Gateway Tier

Outside Index Summary of Material



HTML version of Basic Foils prepared September 13 1998

Foil 1 Java Grande in a Nutshell

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Workshop on Java for High Performance Network Computing
September 2-3 1998 Europar Southampton
Geoffrey Fox
Northeast Parallel Architectures Center
Syracuse University
111 College Place
Syracuse NY
gcf@npac.syr.edu
http://www.javagrande.org
http://www.npac.syr.edu/users/gcf/jgeurosept98

HTML version of Basic Foils prepared September 13 1998

Foil 2 Abstract of EuroTools Java Grande Presentation

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
We describe Java Grande Forum -- motivation and current status
  • motivation discusses Java as a language and where it is clearly good and where it could be good!
  • This has numerical and distributed computing working groups and one project is a community activity to define
Seamless interfaces allowing universal access to general hosts
  • can be CORBA facility or Java framework

HTML version of Basic Foils prepared September 13 1998

Foil 3 Why is Java Worth Looking at?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
The Java Language has several good design features
  • secure, safe (wrt bugs), object-oriented, familiar (to C C++ and even Fortran programmers)
Java has a very good set of libraries covering everything from commerce, multimedia, images to math functions (under development at http://math.nist.gov/javanumerics)
Java has best available electronic and paper training and support resources
Java is rapidly getting best integrated program development environments
Java naturally integrated with network and universal machine supports powerful "write once-run anywhere" model
There is a large and growing trained labor force
Can we exploit this in computational science?

HTML version of Basic Foils prepared September 13 1998

Foil 4 What is Java Grande?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Use of Java for:
High Performance Network Computing
Scientific and Engineering Computation
(Distributed) Modeling and Simulation
Parallel and Distributed Computing
Data Intensive Computing
Communication and Computing Intensive Commercial and Academic Applications
HPCC Computational Grids ........
Very difficult to find a "conventional name" that doesn't get misunderstood by some community!

HTML version of Basic Foils prepared September 13 1998

Foil 5 What is the Competition?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
So existing Grande codes are written in Fortran C and C++ with a clearly unattractive and comparatively unproductive programming environment
These current languages and tools are sufficient but does not seem likely that can build much better environments around them
  • Fortran77 has excellent compilers, good user base but will not be taught broadly and clearly limited in capabilities; in particular not object oriented
  • Fortran90 and HPF will not "make it" (reasons not important)
  • Subsume discussion of C under that of C++
Five years ago, it looked as though C++ could become language of choice (perhaps with Fortran as inner core) but this appears stalled
  • The language is complex and splintered with no agreement on Grande standards -- partly because use in Grande applications is too small to motivate standards and partly due to culture
  • Java halted C++"bandwagon"
So there is no competition -- Java is currently our only hope

HTML version of Basic Foils prepared September 13 1998

Foil 6 Why could Java succeed where Fortran and C++ failed?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
It has some natural advantages due its internet base with threads and distributed computing built in
It is a young language and we can take steps now to avoid unproductive proliferation of libraries and parallel constructs
  • We could be third (Fortran, C++, Java) time lucky
It could have expressivity and object oriented advantages of C++ combined with performance levels of C and Fortran
It can use its clear GUI advantages as an entrée into other aspects of Grande programming

HTML version of Basic Foils prepared September 13 1998

Foil 7 Synergy of Parallel Computing and Web Internetics as Unifying Principle

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
The two forms of Large Scale Computing Scale Computer for Scale Users in Proportion Power User to number of computers
Parallel Commodity Distributed Computers Information Systems Technology <--------------- Internetics Technologies --------------->
Parallel Computer Distributed Computer
HPF MPI Java HTML XML
1% market
99% of market driving
student interest and (Java) technologies

HTML version of Basic Foils prepared September 13 1998

Foil 8 The 3 Roles of Java

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index

HTML version of Basic Foils prepared September 13 1998

Foil 9 Java and multi-tier Grande Systems

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Geographically
Distributed
Grandecomputer
Resources
Gateway System
hosting Seamless Access
Database, Collaboration
Visualization
and other Services
Geographically Distributed users
Java Applet Clients
Parallel or Sequential Java Grande Codes
Java Servers
Java wins today?
Java Grande should promote

HTML version of Basic Foils prepared September 13 1998

Foil 10 What is Goal of Java Grande Forum?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Java has potential to be a better environment for "Grande application development" than any previous languages such as Fortran and C++
The Forum Goal is to develop community consensus and recommendations for either changes to Java or establishment of standards (frameworks) for "Grande" libraries and services
These Language changes or frameworks are designed to realize "best ever Grande programming environment"
First Meeting Mar 1 Palo Alto at Java 98 -- 200 Attendees set Agenda -- 30 permanent people and further meetings May 9-10, Aug 6-7
Public Discussion SC98 Orlando November 13 (3 hour panel)
http://www.npac.syr.edu/projects/javaforcse
http://www.javagrande.org

HTML version of Basic Foils prepared September 13 1998

Foil 11 Two types of Things we are doing

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
1) Most important in the near term -- encourage Sun to make a few key changes in Java to allow it to be a complete efficient Grande Programming Language
  • floating point, arrays, complex etc.
2) As a community, recognize that sometimes standards are more appropriate than creativity and pool results of experiments to produce a Java Grande framework covering libraries and computer access
  • Fiscally important fields such as databases, have established such standards -- we should follow their example
1) requires us to work with the computing mainstream -- 2) is internal to community

HTML version of Basic Foils prepared September 13 1998

Foil 12 Activities of the Java Grande Forum I

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Two major working groups promoting standards and community actions
Numerics: Java as a language for mathematics led by Ron Boisvert and Roldan Pozo from NIST
  • Changes in Java controversial handling of floating point which currently has goal of reproducible results but this leads to non optimal accuracy
  • Addition of Complex types or classes
  • Lightweight classes and Operator overloading -- enables implementation of complex as a class
  • "Fortran rectangular multidimensional arrays" -- Java naturally has "arrays of arrays"
  • High quality math libraries with agreed interfaces -- FFT, Matrices, Transcendental functions

HTML version of Basic Foils prepared September 13 1998

Foil 13 Gosling on Operator Overloading

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Java Grande 98 Feb 28 98

HTML version of Basic Foils prepared September 13 1998

Foil 14 Activities of the Java Grande Forum II

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Distributed and Parallel Computing led by Dennis Gannon and Denis Caromel (INRIA, France)
  • Performance of RMI (Attractive Java distributed object model - "remote method invocation")
  • Performance of Java runtime (the virtual machine VM) with lots of threads, I/O, memory use
  • Parallel Computing interfaces including Java MPI binding
  • Development of universal (Condor, Globus, Legion UNICORE WebSubmit ..) Java interface to computing resources -- enables seamless computing (easier than metacomputing!)
  • Special seamless computing meeting at Argonne October 98
Development of Grande Application benchmarks

HTML version of Basic Foils prepared September 13 1998

Foil 15 Where are we now?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Both working groups have made substantial progress
  • Numerics working group has proposals essentially ready for Sun
  • Concurrency working group will propose modest RMI changes
We are initiating Community actions
  • Help us collect Java Grande benchmarks
  • Work with community on standard classes and libraries
  • Participate in seamless computing framework
  • Stress Java and Java runtime (the VM) with large applications -- where are performance problems?
Join us at SC98 November 13
Note European involvement has been excellent so far
  • Caromel, Getov, Phillipsen
  • Edinburgh and NAG

HTML version of Basic Foils prepared September 13 1998

Foil 16 Java Seamless Computing Framework or CORBA Facility for Computation

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Allows Universal Access to all computers from the same Java Applet Front End Infrastructure for Metacomputing, Performance Modeling, Interfacing computers and data to distributed computational objects

HTML version of Basic Foils prepared September 13 1998

Foil 17 What/Why is a Framework?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Java Calls (mainly Interfaces and not methods) to capabilities expressed in implementation neutral form
Drivers convert these general calls to vendor specific implementation of service
Java code can either be all on client (2-tier) or on client and middle tier (3 tier)
e.g. JDBC (Java Database Connectivity) is a universal interface to all relational databases
Adoption of this JDBC implies that vendor specific solutions are immediately less attractive
  • All vendors must however support JDBC because of importance of "seamless" interfaces!

HTML version of Basic Foils prepared September 13 1998

Foil 18 JDBC Database Framework Architecture

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Java applications
JDBC API
JDBC Driver manager
JDBC API
JDBC Driver API

HTML version of Basic Foils prepared September 13 1998

Foil 19 Proposed Java Computing Services Framework I

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Enables development of Web Interfaces to run a given job on any computer with any data source compliant with this framework just as JDBC gives a universal interface to any relational database
  • i.e. enables seamless computing which is a part of metacomputing but not as ambitious
  • Metacomputing in addition allows linkage of multiple computers to run together on a single job
The Computing Services Framework will allow vendors to compete on either User Front End (GUI) or back end services with the JavaCS framework providing universal linkage
The framework is implemented at the backend as a set of drivers which map generic Java Interfaces to particular software (e.g. a compiler) on particular machines.
  • System vendors would be asked to deliver support for JavaCS as part of RFP

HTML version of Basic Foils prepared September 13 1998

Foil 20 Proposed Java Computing Services Framework II

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Requires agreement by "suitable interested parties" on
  • what are the services
  • what are the interfaces for a given service
  • As with JDBC and Oracle's PL/SQL can lead to difficult choices!
"Old" (seamless workshop Reading Sept 97) link is http://www.sis.port.ac.uk/~mab/Computing-FrameWork/
Abstract ideas developed in Condor Globus Legion and PACE POEMS PetaSIM for harder problems (metacomputing / performance specification) and developed for seamless problem by Sweb (Cornell) WebSubmit (NIST) or UNICORE (Europe)
  • Who else should we would be talking to?

HTML version of Basic Foils prepared September 13 1998

Foil 21 Possible Services in a Java Computing Framework - I

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Grande Resource Discovery, Allocation and Scheduling
  • Recent JINI Sun technology looks attractive
We are defining methods and properties of computers and programs viewed as distributed objects
  • Thus we are inevitability defining a CORBA facility for computing
Compiling, Executing, Specification of features needed for execution optimization
  • This includes parameters needed by MPI/HPF decompositions such as number of processors
  • Resource Management and Scheduling jobs as in Codine or LSF or commercial NT environments
Accounting -- integrate with Web commerce technology?
Authentication, Security (especially hard in metacomputing as link several different management policies)
  • Public Key Infrastructure expected from Internet commerce very important

HTML version of Basic Foils prepared September 13 1998

Foil 22 Possible Services in a Java Computing Framework - II

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Sharing, Accessing and Storing into File Systems
Data and Performance Visualization Interface (how applets access server side information)
Performance measurement and recording (cf: Pablo SDDF)
Interfaces for Programming Tools
  • Debuggers
  • Computational Steering / Interpreted Execution
Libraries including names in generalized Math class and
  • Java Grande defining this in numerics working group
Module linkage model for metaproblems (multidisciplinary applications) could be "outside scope" -- can we use standard JavaBean approach?

HTML version of Basic Foils prepared September 13 1998

Foil 23 What should you do as a Java Grande believer?

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Don't need to rewrite existing codes in Java!
Rather use Java freely at client and "gateway" tier
Wrap existing codes as CORBA or Java distributed objects
Conduct suitable experiments in using Java in complete Grande applications
Make certain your interests are represented in Java Grande Forum
Retrain your staff in Java Web and distributed object technologies
Put "High Performance Grande Forum compliant" Java support into your RFP's for hardware and software

HTML version of Basic Foils prepared September 13 1998

Foil 24 Multi Tier Gateway Architecture

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
High Performance Computing and Communication Tier
Clients
Gateway Systems as Middle Tier

HTML version of Basic Foils prepared September 13 1998

Foil 25 Multi-Server Gateway Tier

From Java Grande in a Nutshell EuroPar Java Grande Workshop -- September 2-3 1998. *
Full HTML Index
Database
Matrix Solver
Optimization Service
MPP
MPP
Parallel DB Proxy
NEOS Control Optimization
Origin 2000 Proxy
NetSolve Linear Alg. Server
IBM SP2 Proxy
Gateway Control
Agent-based Choice of Compute Engine
Multidisciplinary Control (WebFlow)
Data Analysis Server

© 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 Sat Nov 28 1998