Full HTML for

Basic foilset Lessons from C++ for the Java Grande Process

Given by John Reynders (Los Alamos) at SC98 Orlando Java Grande Panel on November 13 98. Foils prepared December 6 98
Outside Index Summary of Material


Java Grande Forum Homepage
SC98 Java Grande Panel Presentation
C++ Experience
C++ Fortran Battle!
High Performance Issues
Language Design and Features

Table of Contents for full HTML of Lessons from C++ for the Java Grande Process

Denote Foils where Image has important information
Denote Foils where HTML is sufficient

1 Lessons from C++
2 Scientific SuperComputing
3 Rites of Passage
4 The C++/Fortran Battle:
5 High Performance
6 Language Design/Features

Outside Index Summary of Material



HTML version of Basic Foils prepared December 6 98

Foil 1 Lessons from C++

From Lessons from C++ for the Java Grande Process SC98 Orlando Java Grande Panel -- November 13 98. *
Full HTML Index
John V. W. Reynders
Los Alamos National Laboratory
SuperComputing `98
November 13, 1998

HTML version of Basic Foils prepared December 6 98

Foil 2 Scientific SuperComputing

From Lessons from C++ for the Java Grande Process SC98 Orlando Java Grande Panel -- November 13 98. *
Full HTML Index
Rites of Passage
The C++/Fortran Battle
High Performance
Language Design/Features

HTML version of Basic Foils prepared December 6 98

Foil 3 Rites of Passage

From Lessons from C++ for the Java Grande Process SC98 Orlando Java Grande Panel -- November 13 98. *
Full HTML Index
Cost of rewrite to a physicist is too high
  • Demonstrated C++ codes which outperformed their Fortran equivalents
    • Able to deploy a wider range of object optimizations such as array compression
    • parallel encapsulation enabled "hidden" multi-threading
  • Demonstrated C++ codes which outscaled their Fortran equivalents
    • Dynamic load balancing ( e.g. particle swap and balance )
Developed full-scale physics codes:
  • multi-material hydro
  • fusion plasmas
  • advanced accelerator design

HTML version of Basic Foils prepared December 6 98

Foil 4 The C++/Fortran Battle:

From Lessons from C++ for the Java Grande Process SC98 Orlando Java Grande Panel -- November 13 98. *
Full HTML Index
Performance
  • a loop is a loop by any other name
  • pointer aliasing
  • language complexity
  • paradigms ( particles vs. species )
Legacy Base
  • extending
  • heterogeneous source
  • tools
Expertise
Market Presence ( F90 vs. C++ : ride the wave!!! )

HTML version of Basic Foils prepared December 6 98

Foil 5 High Performance

From Lessons from C++ for the Java Grande Process SC98 Orlando Java Grande Panel -- November 13 98. *
Full HTML Index
C++
  • standard compliance
  • Mature Compilers
    • Aggressive In-lining
    • Small object opt.
  • Restrict Keyword
  • Template programming
Java
  • Compile as another language
  • intrinsic concurrency
    • threads ( how light? )
    • RMI
Mixed model - message passing/RMI/threading
Memory/thread affinity

HTML version of Basic Foils prepared December 6 98

Foil 6 Language Design/Features

From Lessons from C++ for the Java Grande Process SC98 Orlando Java Grande Panel -- November 13 98. *
Full HTML Index
The performance will get there:
The long pole in the tent will be the language features which limit how simulations developers can represent their physics.
overloaded operators
generic programming with parameterized classes
  • generic libraries ( STL )
  • expression templates
  • compile-time polymorphism
  • meta-programming

© 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 Dec 6 1998