Description
Titanium is an explicitly parallel dialect of Java designed for high-performance scientific programming. It offers object-orientation, strong typing, and safe memory management in the context of a language that supports high performance and scalable parallelism. We present an overview of the language features and demonstrate their use in the context of the NAS Parallel Benchmarks, a benchmark suite of common scientific kernels. We argue that parallel languages like Titanium provide greater expressive power than conventional approaches, thereby enabling more concise and expressive code and minimizing time to solution. Moreover, the Titanium implementations of three of the NAS Parallel Benchmarks can match or even exceed the performance of the standard Fortran/MPI implementations at realistic problem sizes and processor scales, while still using far cleaner, shorter and more maintainable code.