Full HTML for

Basic foilset Overview of Java Grande Forum

Given by Geoffrey C. Fox at JavaOne Birds of a Feather on Java Grande San Francisco on June 16 99. Foils prepared July 6 99
Outside Index Summary of Material


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!

Table of Contents for full HTML of Overview of Java Grande Forum

Denote Foils where Image Critical
Denote Foils where HTML is sufficient

1 Java Grande Forum Status
2 What is Java Grande?
3 What is Goal of Java Grande Forum?
4 Coming Events
5 JavaOne Grande Vision I
6 JavaOne Grande Vision II
7 JavaOne Grande Vision III
8 What is the Java Grande Process?
9 Java Grande Forum and Activities
10 The 3 Places Java can be Used
11 A Multi-Tier Computing System
12 Portal to Earthquake Science 3-Tier Computing Architecture
13 Java Computing Portal or Grande Computing Framework
14 JDBC Analogy
15 Java Computing Portal Framework
16 PPT Slide
17 Possible Services in DATORR or Java Computing Portal Framework
18 Activities of the Java Grande Forum I
19 Numerical Computing in Java
20 Java Grande Forum Floating Point Proposals
21 Activities of the Java Grande Forum II
22 Distributed Computing
23 Benchmarking
24 Java and MPI Overview
25 Lots of MPI activity
26 The Future of the Concurrency Group?
27 Some Remarks on Remote Method Invocation RMI
28 Future Activities of Concurrency Group

Outside Index Summary of Material



HTML version of Basic Foils prepared July 6 99

Foil 1 Java Grande Forum Status

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
JavaOne
Birds of a Feather June 16, 1999 San Francisco
Marriot Hotel
Geoffrey Fox
NPAC
Syracuse University
gcf@npac.syr.edu
http://www.javagrande.org

HTML version of Basic Foils prepared July 6 99

Foil 2 What is Java Grande?

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
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 July 6 99

Foil 3 What is Goal of Java Grande Forum?

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
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"
Activities involve "Working with Outside Community" (e.g. Floating Point Rules and RMI)
  • and "Working Internally to Grande Community" (e.g. scientific library frameworks)

HTML version of Basic Foils prepared July 6 99

Foil 4 Coming Events

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
ACM Java Grande Conference '00 June '00 (? Stanford, San Francisco, UC Berkeley)
SC99 November '99 "Presence"
  • Note SC98 had a 3 hour panel which we are not repeating
ISCOPE '99 December 99 has strong Grande C++ and growing Java constituency. Could collocate Forum activity

HTML version of Basic Foils prepared July 6 99

Foil 5 JavaOne Grande Vision I

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
We learnt from the Keynote talks that:
Parallel Computing (use of multiple CPU's to address a single problem) is inevitable
  • Year 2005, 100's of Java CPU's per chip to support immersive environments
  • Simulations of physical world (weathe, aircraft, oil resevoir, cosmology) underlie virtual worlds
Today's supercomputer is a window to capabilities of tomorrow's desktop
We will see by 2005, One Million connected workstation's, ?100? million connected consumer devices
  • How can they be integrated?
Complexity prevents scaling of large systems
  • Software and hardware
  • Jini provides new model of fault tolerant dynamic system integration

HTML version of Basic Foils prepared July 6 99

Foil 6 JavaOne Grande Vision II

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
What can we learn from current Grande experience?
  • Hardware architectures
  • Modest but important changes in core Java Infrastructure
Current Grande techniques teach us algorithmic requirements such as the nifty sorting algorithms but only how to scale to 1000's of processes in controlled environments
  • Need major changes in Grande techniques and very different implementations
New programming models i.e. new Java Grande framework requires merging and modifying Java and Grande ideas
Java Grande Forum is bringing two communities together to address near term and future issues to enable scalable world wide Java VM

HTML version of Basic Foils prepared July 6 99

Foil 7 JavaOne Grande Vision III

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Java thread model is insufficient for large scale parallelism
Need to take experience from Grande community and provide
  • Near term bridges (MPI linked to Java)
  • Future Models (Jini linked to Grande algorithms)
Performance is critical
  • Core Java technology such as Hotspot provides raw infrastructure but is not a complete solution
Numerical computing has special needs in both
  • expressivity (e.g. complex types) and
  • performance/reproducibility as it is different from system programming (results are data dependent)
Java Grande framework must address both low level (messaging, floating point coding) and high level interfaces (portals to simulations, immersive worlds ...)

HTML version of Basic Foils prepared July 6 99

Foil 8 What is the Java Grande Process?

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Set of Workshops with increasing interest
  • Syracuse December 96 -- 50 participants
  • Las Vegas June 97 -- 100
  • Palo Alto February 98 -- 200
  • Southampton (Europe) Sept 98 -- 60
  • San Francisco June 99 -- 160 (First official ACM Conference)
Topics include compilation issues; applications; algorithms (math libraries); benchmarking; Java based programming environments(visualization); parallel computing and largest set of papers are in distributed systems
Increase in Java tracks in mainstream Grande and Computer Science conferences
  • Europe: HPCN (April 99), Mannheim and Rhodes (June 99)
  • USA: SC98 (November 98), IPPS (April 99), SC99 (November 99), ISCOPE99 (December 99)

HTML version of Basic Foils prepared July 6 99

Foil 9 Java Grande Forum and Activities

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Centerpiece: ACM Java Grande Conferences held just before JavaOne (June 12-14 99, perhaps June 2-4 2000)
We set up in February 98 a Forum to bring together players in this field
Numerics Boisvert/Pozo
  • Expression and compilation of basic numeric expressions
  • Scientific Libraries
Concurrency and Applications Gannon/Caromel
  • Java Scalable Messaging starting with MPI
  • Benchmarking
  • RMI Performance
New Areas
  • Server Performance
  • Computing Portals
  • Jini as infrastructure for Scalable Grande applications

HTML version of Basic Foils prepared July 6 99

Foil 10 The 3 Places Java can be Used

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index

HTML version of Basic Foils prepared July 6 99

Foil 11 A Multi-Tier Computing System

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Geographically
Distributed
Grandecomputer
Resources
Enterprise
Middleware
Gateway
System
Geographically Distributed users
and consultants
1
2
3
Java Applets
Java Language
Java Servers

HTML version of Basic Foils prepared July 6 99

Foil 12 Portal to Earthquake Science 3-Tier Computing Architecture

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Application Integration
Visualization Server
Seamless Access
Collaboration
Security Lookup
Registration
Agents/Brokers
Backend Services
Middleware
Bunch of
Web Servers
and Object
Brokers

HTML version of Basic Foils prepared July 6 99

Foil 13 Java Computing Portal or Grande Computing Framework

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
So computer users are interested in in being able to run their jobs in a seamless way that does not keep changing as backend computer resources are upgraded
  • Also new computing models such as webs of workstations, arrays of Java chips ...
  • Java makes code run anywhere but more to a job than code
Viewing computing as a distributed (object) service, need to define a "Java Computing Portal Framework"
This enables development of Web Interfaces ("Portals") 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
  • Metacomputing in addition allows linkage of multiple computers to run together on a single job
The Computing Portal Framework will allow vendors to compete on either User Front End (GUI) or back end services with the JavaCS framework providing universal linkage

HTML version of Basic Foils prepared July 6 99

Foil 14 JDBC Analogy

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Java Database Connectivity JDBC offers seamless access to databases with typically the three tier architecture shown below
  • Essentially all database vendors support this
  • Java application code is at client, middle or database tier with different performance/convenience tradeoffs

HTML version of Basic Foils prepared July 6 99

Foil 15 Java Computing Portal Framework

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Desktop Access to Remote Resources or DATORR was initial name
http://www-fp.mcs.anl.gov/~gregor/datorr
Oct 8-9 Meeting at Argonne and SC98 BoF
Feb 15-16 at Sandia Albuquerque
Collecting projects and abstracting requirements from user and system point of view
Aim is to suggest standards for client-middleware (what is a task?) and middleware-backend (what is a resource)
Standards will be in XML so can use in your favorite object model
Common Portal Architecture initiative in NCSA alliance will drive DATORR with application requirements and (several) "workbench"/"Portal" implementations
Integration with synergistic Grid Forum activities
Role of Enterprise Javabeans?

HTML version of Basic Foils prepared July 6 99

Foil 16 PPT Slide

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index

HTML version of Basic Foils prepared July 6 99

Foil 17 Possible Services in DATORR or Java Computing Portal Framework

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
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 very important (cf: Globus)

HTML version of Basic Foils prepared July 6 99

Foil 18 Activities of the Java Grande Forum I

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
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
  • http://math.nist.gov/javanumerics/
  • (Optional) Changes in Java handling of floating point which currently has goal of reproducible results but this leads to non optimal accuracy in numeric compuations
  • Better Support of Complex arithmetic
  • 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 and Linear Algebra, Transcendental functions

HTML version of Basic Foils prepared July 6 99

Foil 19 Numerical Computing in Java

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
So Java not only will run anywhere but can be expected to get same answers everywhere
  • As long as use of Native (C, Fortran) libraries and indeterminate concurrency controlled
Natural tension between performance (both in terms of speed and precision) and reproducibility
  • Need to encourage more research into "reproducible algorithms" but support both goals
Java has particularly bad floating point performance due to
  • As in all applications, immature compiler (JIT) technology
  • does not exploit proprietary hardware features (extended precision, fused multiply add)
  • does not allow well known compiler optimizations (associativity)
Solution requires "Change in Java Rules" and better compilers

HTML version of Basic Foils prepared July 6 99

Foil 20 Java Grande Forum Floating Point Proposals

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Design Goals/Requirements:
  • Good Performance on most processors
  • High performance supported
  • exact reproducibility supported
  • access to IEEE floating point features
We propose three modes of floating point execution
strictfp: Reproducible results as in current default
new default: Exploit natural hardware (extended exponent in Intel and fused multiply add FMA)
associatefp: Allow conventional compiler optimizations
Sun will consider some version of this starting with ability to use FMA
Generic Types, Operator Overloading and lightweight classes are also serious possibilities for thoughtful additions to Java language
Working with internal Sun staff on drafting modest proposals (as of March 11 meeting in Palo Alto)

HTML version of Basic Foils prepared July 6 99

Foil 21 Activities of the Java Grande Forum II

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
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 -- enable high performance servers
  • Parallel Computing interfaces including Java MPI binding
  • Development of universal Java interface to computing resources -- or Computing Portals
  • Use of Jini in Grande Applications
Development of Grande Application benchmarks
  • NIST and Edinburgh

HTML version of Basic Foils prepared July 6 99

Foil 22 Distributed Computing

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
RMI and Object Serialization.
  • Important early focus of Grande interest.
  • Lots of early experiments.
  • Karlsruhe -
Problem Solved? yes and no.
What is next? Jini ?

HTML version of Basic Foils prepared July 6 99

Foil 23 Benchmarking

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Java Grande Forum Benchmarking Activity
Serial Suite
  • Low level
    • loops, RMI, serialization, object allocation, etc.
  • Kernels
    • ffts, Scimark2, Sorting, encryption, sparse matrix
  • Large Scale (Serial and Parallel)
    • CFD, MD, Vis, Monte Carlo
    • NAS Parallel BMs.

HTML version of Basic Foils prepared July 6 99

Foil 24 Java and MPI Overview

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Context
  • Clusters, NOWs, SP2s, Beowulf systems.
  • SMPs with multi-threaded parallelism
Goals
  • An MPI API for Java.
  • Study a real OO MPI-like model for Java.
  • Performance studies.

HTML version of Basic Foils prepared July 6 99

Foil 25 Lots of MPI activity

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
Java API for MPI
Experiments with OO models.
  • Draw upon MPI/RT, MPI-2, etc.
  • Look at Upward compatibility
Performance Studies (see ACM Java Grande Conference 99)

HTML version of Basic Foils prepared July 6 99

Foil 26 The Future of the Concurrency Group?

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
What are the outstanding Issues for Grande Applications?
  • Confluence of interest in Server-Side.
    • Innovation in JVM implementations for SMPs
    • Advances in compiler technology.
    • MPI aware JVMs.
      • Applications for large, semi-homogeneous clusters (SP) and Beowulf systems. Also RMI ...
    • Growing interest in Enterprise Java Beans.
  • Scalable Jini based High Performance Simulations
  • Broadening of benchmarking efforts.

HTML version of Basic Foils prepared July 6 99

Foil 27 Some Remarks on Remote Method Invocation RMI

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
So good news is that RMI has enabled very active distributed computing research and indeed development as in JavaSpaces from Sun
Performance is reasonable but insufficient for some applications
  • It is already good enough to get started and for instance outperforms many (Java) CORBA implementations
Forum suggests (optional) changes in several areas including
  • Serialization -- this is used in Persistent object storage and to transmit objects between different programs in a distributed application -- can be optimized differently for each case
  • Transport Layer -- need to be able to layer RMI interfaces over fast transport mechanisms -- Myrinet, native ATM etc.

HTML version of Basic Foils prepared July 6 99

Foil 28 Future Activities of Concurrency Group

From Overview of Java Grande Forum JavaOne Birds of a Feather on Java Grande San Francisco -- June 16 99. *
Full HTML Index
What is the Impact of Jini?
  • A collection of standard Java services with major implications for Metacomputing.
    • Discovery of resources
    • Distributed Event management
    • Brokering and Transaction
    • Java Spaces Linda like distributed computing system (whereas Jini is a general service suite)
  • What is the role of Jini in large scale "Grid" environments such as Globus and Legion?
  • Important in Java Computing Portal process

© 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 Tue Jul 6 1999