Abstract
Titanium is an explicitly parallel dialect of JavaTM designed for high-performance scientific programming. We present an overview of the language features and demonstrate their use in the context of the NAS Parallel Benchmarks, a standard suite of common scientific kernels. We argue that parallel languages like Titanium provide greater expressive power than conventional approaches, enabling much more concise and expressive code that minimizes time to solution. Moreover, we have found that 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.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Yelick, K., Semenzato, L., Pike, G., Miyamoto, C., Liblit, B., Krishnamurthy, A., Hilfinger, P., Graham, S., Gay, D., Colella, P., Aiken, A.: Titanium: a highperformance Java dialect. In: Proceedings of ACM 1998 Workshop on Java for High-Performance Network Computing (1998)
UPC Community Forum: UPC specification v1.2 (2005), http://upc.gwu.edu/documentation.html
Numrich, R., Reid, J.: Co-array fortran for parallel programming. ACM Fortran Forum 17(2), 1–31 (1998)
Bailey, D.H., Barszcz, E., Barton, J.T., Browning, D.S., Carter, R.L., Dagum, D., Fatoohi, R.A., Frederickson, P.O., Lasinski, T.A., Schreiber, R.S., Simon, H.D., Venkatakrishnan, V., Weeratunga, S.K.: The NAS Parallel Benchmarks. The International Journal of Supercomputer Applications 5(3), 63–73 (1991)
Gosling, J., Joy, B., Steele, G.: The Java Language Specification, 2nd edn. (2000)
Hilfinger, P., Bonachea, D., Gay, D., Graham, S., Liblit, B., Pike, G., Yelick, K.: Titanium language reference manual. Tech. Report UCB/CSD-01-1163, U.C. Berkeley (2001)
Titanium home page, http://titanium.cs.berkeley.edu
Wen, T., Colella, P.: Adaptive mesh refinement in Titanium. In: 19th International Parallel and Distributed Processing Symposium, IPDPS (2005)
Givelberg, E., Yelick, K.: Distributed immersed boundary simulation in Titanium (2003)
MPI Forum: MPI: A message-passing interface standard, v1.1. Technical report, University of Tennessee, Knoxville, June 12 (1995), http://www.mpi-forum.org/docs/mpi-11.ps
Chamberlain, B.L., Deitz, S.J., Snyder, L.: A comparative study of the NAS MG benchmark across parallel languages and architectures. In: Supercomputing 2000: Proceedings of the 2000 ACM/IEEE conference on Supercomputing (2000)
Liblit, B., Aiken, A.: Type systems for distributed data structures. In: The 27th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL (2000)
Pike, G., Hilfinger, P.N.: Better tiling and array contraction for compiling scientific programs. In: Proceedings of the IEEE/ACM SC 2002 Conference (2002)
Pike, G.R.: Reordering and storage optimizations for scientific programs (2002)
Frigo, M., Johnson, S.G.: The design and implementation of FFTW3. Proceedings of the IEEE 93(2), 216–231 (2005); Special issue on Program Generation, Optimization, and Platform Adaptation
The Berkeley UPC Compiler (2002), http://upc.lbl.gov
Bell, C., Bonachea, D., Nishtala, R., Yelick, K.: Optimizing application performance using one-sided communication. Technical Report to appear, Lawrence Berkeley National Laboratory (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Datta, K., Bonachea, D., Yelick, K. (2006). Titanium Performance and Potential: An NPB Experimental Study. In: Ayguadé, E., Baumgartner, G., Ramanujam, J., Sadayappan, P. (eds) Languages and Compilers for Parallel Computing. LCPC 2005. Lecture Notes in Computer Science, vol 4339. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69330-7_14
Download citation
DOI: https://doi.org/10.1007/978-3-540-69330-7_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69329-1
Online ISBN: 978-3-540-69330-7
eBook Packages: Computer ScienceComputer Science (R0)