This research was conducted by Katherine Yelick, Luigi Semenzato, Geoff Pike, Carleton Miyamoto, Ben Liblit, Arvind Krishnamurthy, Paul Hilfinger, Susan Graham, David Gay, Phil Colella, and Alex Aiken. This paper was first published in the ACM 1998 Workshop on Java for High-Performance Network Computing. It was subsequently reprinted in a special issue of Concurrency: Practice and Experience. A later version appeared in the Ninth SIAM Conference on Parallel Processing for Scientific Computing (PPSC 1999).
Titanium is a language and system for high-performance parallel scientific computing. Titanium uses Java as its base, thereby leveraging the advantages of that language and allowing us to focus attention on parallel computing issues. The main additions to Java are immutable classes, multi-dimensional arrays, an explicitly parallel SPMD model of computation with a global address space, and zone-based memory management. We discuss these features and our design approach, and report progress on the development of Titanium, including our current driving application: a three-dimensional adaptive mesh refinement parallel Poisson solver.
The full paper is available as a single PDF document. A suggested BibTeX citation record is also available.