These exist from both a computer science and user point of view
|
Grande applications are very complex but field is small (1% or so of total computing world)
-
It is a much larger fraction of academic computation
|
The field needs Java as it provides a wonderful distributed computing software infrastructure on which to build applications and tools
-
e.g. RMI JINI etc can enable metacomputing?
-
Users can enjoy Java program development environment
|
Not clear that Java needs the field and so Grande field needs to be humble and persuasive in its requests
|
Currently the Grande field is intrigued but skeptical due to poor Java performance
|
Java community doing battle in commercially critical areas
|
Need to bring communities together
|
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 resources
|
Children will learn Java (and other POW technologies) as it is a social language with natural graphical "hello world"
|
Java is rapidly getting best integrated program development environments
|
Java naturally integrated with network and universal machine supports potentially powerful "write once-run anywhere" model
|
There is a large and growing trained labor force
|
Can we exploit this in Grande Applications?
|
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 with some 250 attendees) where we released our first report (54 pages on web site)
-
Recently two key meetings with Sun at Burlington and Palo Alto
|
http://www.javagrande.org
|
Report from the Numerics Working Group of the Java Grande Forum, Ron Boisvert NIST
|
Report from the Applications and Concurrency Working Group of the Java Grande Forum, Dennis Gannon, Indiana University and NASA Ames
|
Compilers and Performance of Java, Marc Snir, IBM
|
Linear Algebra in Java, Cleve Moler , The MathWorks
|
Building Libraries in Java, Jack Dongarra, University of Tennessee and Oak Ridge National Laboratory
|
Lessons from C++, John Reynders, Los Alamos
|
Application Experience in Oil Industry, Siamak Hassanzadeh, Sun
|
Java Benchmarks, David Henty, Edinburgh Parallel Computing Center
|
MPI for Java, Vladimir Getov, Westminster University England
|
Java Framework for Computing Services (Desktop Access to Remote Resources), Gregor von Laszewski, Argonne National Laboratory
|
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 willingly to 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)
|
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) by SC99
-
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
|
|
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)
|
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
|
Does this change research agenda? (different types of compilers, service-based architectures, re-use commodity technologies -- don't roll your own with federal funds ...)
|
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
|
Get your leaders ( Larry Smarr, Sid Karin, Gil Weigand, Andy White, Ken Kennedy ..) to support the Java Grande process
|
Explain to Sun and JavaSoft why they should care
|
Note it is NOT obvious that we will succeed ........
|
Help us collect Java Grande benchmarks
|
Work with community on standard classes and libraries
|
Participate in establishing seamless computing framework by participation in Java Computing Portal process
|
Participate in Java MPI process
|