Titanium is a dialect of Java for large-scale scientific computing. The primary goal is a language that has high performance on large scale multiprocessors, including massively parallel processors and workstation clusters with one or more processors per node. Secondary goals include safety, portability, and support for building complex data structures. The main additions to Java are immutable classes, multi-dimensional arrays, an explicitly parallel SPMD model, and zone-based memory management. This document informally describes our current design for the Titanium language. It is in the form of a set of changes to Java, version 1.0.
Cited By
- Denniston T, Kamil S and Amarasinghe S Distributed Halide Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (1-12)
- Denniston T, Kamil S and Amarasinghe S (2016). Distributed Halide, ACM SIGPLAN Notices, 51:8, (1-12), Online publication date: 9-Nov-2016.
- Hamidouche K, Zhang J, Panda D and Tomko K OpenSHMEM nonblocking data movement operations with MVAPICH2-X Proceedings of the First Workshop on PGAS Applications, (9-16)
- Kayraklioglu E and El-Ghazawi T Assessing memory access performance of chapel through synthetic benchmarks Proceedings of the 15th IEEE/ACM International Symposium on Cluster, Cloud, and Grid Computing, (1147-1150)
- Hayashi A, Zhao J, Ferguson M and Sarkar V LLVM-based communication optimizations for PGAS programs Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC, (1-11)
- Awan A, Hamidouche K, Chu C and Panda D A Case for Non-blocking Collectives in OpenSHMEM Revised Selected Papers of the Second Workshop on OpenSHMEM and Related Technologies. Experiences, Implementations, and Technologies - Volume 9397, (69-86)
- Xu Z, Kamil S and Solar-Lezama A MSL Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, (311-322)
- Lyberis S, Pratikakis P, Nikolopoulos D, Schulz M, Gamblin T and de Supinski B (2012). The myrmics memory allocator, ACM SIGPLAN Notices, 47:11, (15-24), Online publication date: 8-Jan-2013.
- Lippmeier B and Keller G (2011). Efficient parallel stencil convolution in Haskell, ACM SIGPLAN Notices, 46:12, (59-70), Online publication date: 12-Jan-2012.
- Lyberis S, Pratikakis P, Nikolopoulos D, Schulz M, Gamblin T and de Supinski B The myrmics memory allocator Proceedings of the 2012 international symposium on Memory Management, (15-24)
- Nishtala R, Zheng Y, Hargrove P and Yelick K (2011). Tuning collective communication for Partitioned Global Address Space programming models, Parallel Computing, 37:9, (576-591), Online publication date: 1-Sep-2011.
- Lippmeier B and Keller G Efficient parallel stencil convolution in Haskell Proceedings of the 4th ACM symposium on Haskell, (59-70)
- Park C, Sen K, Hargrove P and Iancu C Efficient data race detection for distributed memory parallel programs Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis, (1-12)
- Sanders B, Bartlett R, Deumens E, Lotrich V and Ponton M A Block-Oriented Language and Runtime System for Tensor Algebra with Very Large Arrays Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis, (1-11)
- Bikshandi G, Castanos J, Kodali S, Nandivada V, Peshansky I, Saraswat V, Sur S, Varma P and Wen T Efficient, portable implementation of asynchronous multi-place programs Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming, (271-282)
- Bikshandi G, Castanos J, Kodali S, Nandivada V, Peshansky I, Saraswat V, Sur S, Varma P and Wen T (2009). Efficient, portable implementation of asynchronous multi-place programs, ACM SIGPLAN Notices, 44:4, (271-282), Online publication date: 14-Feb-2009.
- Gan G, Wang X, Manzano J and Gao G Tile Reduction Proceedings of the 5th International Workshop on OpenMP: Evolving OpenMP in an Age of Extreme Parallelism, (140-153)
- Nishtala R, Almasi G and Cascaval C Performance without pain = productivity Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, (99-110)
- Min S and Eigenmann R Optimizing irregular shared-memory applications for clusters Proceedings of the 22nd annual international conference on Supercomputing, (256-265)
- Shirako J, Peixotto D, Sarkar V and Scherer W Phasers Proceedings of the 22nd annual international conference on Supercomputing, (277-288)
- Agarwal S, Barik R, Bonachea D, Sarkar V, Shyamasundar R and Yelick K Deadlock-free scheduling of X10 computations with bounded resources Proceedings of the nineteenth annual ACM symposium on Parallel algorithms and architectures, (229-240)
- Yelick K, Bonachea D, Chen W, Colella P, Datta K, Duell J, Graham S, Hargrove P, Hilfinger P, Husbands P, Iancu C, Kamil A, Nishtala R, Su J, Welcome M and Wen T Productivity and performance using partitioned global address space languages Proceedings of the 2007 international workshop on Parallel symbolic computation, (24-32)
- Park S Type-safe higher-order channels in ML-like languages Proceedings of the 12th ACM SIGPLAN international conference on Functional programming, (191-202)
- Park S (2007). Type-safe higher-order channels in ML-like languages, ACM SIGPLAN Notices, 42:9, (191-202), Online publication date: 1-Oct-2007.
- Bernholdt D Component architectures in the next generation of ultrascale scientific computing Proceedings of the 2007 symposium on Component and framework technology in high-performance and scientific computing, (1-10)
- Chamberlain B, Callahan D and Zima H (2007). Parallel Programmability and the Chapel Language, International Journal of High Performance Computing Applications, 21:3, (291-312), Online publication date: 1-Aug-2007.
- Yelick K, Hilfinger P, Graham S, Bonachea D, Su J, Kamil A, Datta K, Colella P and Wen T (2007). Parallel Languages and Compilers, International Journal of High Performance Computing Applications, 21:3, (266-290), Online publication date: 1-Aug-2007.
- Basumallik A and Eigenmann R Optimizing irregular shared-memory applications for distributed-memory systems Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming, (119-128)
- Bell C, Bonachea D, Nishtala R and Yelick K Optimizing bandwidth limited problems using one-sided communication and overlap Proceedings of the 20th international conference on Parallel and distributed processing, (84-84)
- Kamil A, Su J and Yelick K Making Sequential Consistency Practical in Titanium Proceedings of the 2005 ACM/IEEE conference on Supercomputing
- Charles P, Grothoff C, Saraswat V, Donawa C, Kielstra A, Ebcioglu K, von Praun C and Sarkar V X10 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (519-538)
- Charles P, Grothoff C, Saraswat V, Donawa C, Kielstra A, Ebcioglu K, von Praun C and Sarkar V (2005). X10, ACM SIGPLAN Notices, 40:10, (519-538), Online publication date: 12-Oct-2005.
- Datta K, Bonachea D and Yelick K Titanium performance and potential Proceedings of the 18th international conference on Languages and Compilers for Parallel Computing, (200-214)
- Kamil A and Yelick K Concurrency analysis for parallel programs with textually aligned barriers Proceedings of the 18th international conference on Languages and Compilers for Parallel Computing, (185-199)
- Bell C, Chen W, Bonachea D and Yelick K Evaluating support for global address space languages on the Cray X1 Proceedings of the 18th annual international conference on Supercomputing, (184-195)
- Chin W, Craciun F, Qin S and Rinard M Region inference for an object-oriented language Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation, (243-254)
- Chin W, Craciun F, Qin S and Rinard M (2004). Region inference for an object-oriented language, ACM SIGPLAN Notices, 39:6, (243-254), Online publication date: 9-Jun-2004.
- Bonachea D and Duell J (2004). Problems with using MPI 1.1 and 2.0 as compilation targets for parallel language implementations, International Journal of High Performance Computing and Networking, 1:1-3, (91-99), Online publication date: 1-Jan-2004.
- Chen W, Bonachea D, Duell J, Husbands P, Iancu C and Yelick K A performance analysis of the Berkeley UPC compiler Proceedings of the 17th annual international conference on Supercomputing, (63-73)
- Liblit B, Aiken A and Yelick K Type systems for distributed data sharing Proceedings of the 10th international conference on Static analysis, (273-294)
- Pike G and Hilfinger P Better tiling and array contraction for compiling scientific programs Proceedings of the 2002 ACM/IEEE conference on Supercomputing, (1-12)
Recommendations
Titanium performance and potential: an NPB experimental study
LCPC'05: Proceedings of the 18th international conference on Languages and Compilers for Parallel ComputingTitanium 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 ...