Publication | Open Access
Parallel Languages and Compilers: Perspective From the Titanium Experience
33
Citations
39
References
2007
Year
EngineeringCompiler TechnologyComputer ArchitectureParallel ImplementationSoftware EngineeringSoftware AnalysisParallel SoftwareTitanium Runtime TechnologyNas Parallel BenchmarksComputing SystemsParallel ComputingCompilersParallelizing CompilerComputer EngineeringComputer ScienceParallel LanguagesTitanium Compiler ImplementationProgram AnalysisParallel ProcessingParallel ProgrammingParallel Programming Model
We describe the rationale behind the design of key features of Titanium—an explicitly parallel dialect of Java for high-performance scientific programming—and our experiences in building applications with the language. Specifically, we address Titanium's partitioned global address space model, single program multiple data parallelism support, multi-dimensional arrays and array-index calculus, memory management, immutable classes (class-like types that are value types rather than reference types), operator overloading, and generic programming. We provide an overview of the Titanium compiler implementation, covering various parallel analyses and optimizations, Titanium runtime technology and the GASNet network communication layer. We summarize results and lessons learned from implementing the NAS parallel benchmarks, elliptic and hyperbolic solvers using adaptive mesh refinement, and several applications of the immersed boundary method.
| Year | Citations | |
|---|---|---|
Page 1
Page 1