{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,1]],"date-time":"2026-05-01T22:59:09Z","timestamp":1777676349508,"version":"3.51.4"},"reference-count":68,"publisher":"SAGE Publications","issue":"3","license":[{"start":{"date-parts":[[2007,8,1]],"date-time":"2007-08-01T00:00:00Z","timestamp":1185926400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/journals.sagepub.com\/page\/policies\/text-and-data-mining-license"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["The International Journal of High Performance Computing Applications"],"published-print":{"date-parts":[[2007,8]]},"abstract":"<jats:p>We describe the rationale behind the design of key features of Titanium\u2014an explicitly parallel dialect of Java for high-performance scientific programming\u2014and 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.<\/jats:p>","DOI":"10.1177\/1094342007078449","type":"journal-article","created":{"date-parts":[[2007,7,19]],"date-time":"2007-07-19T11:49:38Z","timestamp":1184845778000},"page":"266-290","source":"Crossref","is-referenced-by-count":16,"title":["Parallel Languages and Compilers: Perspective From the Titanium Experience"],"prefix":"10.1177","volume":"21","author":[{"given":"K.","family":"Yelick","sequence":"first","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY,\r                        , LAWRENCE BERKELEY NATIONAL LABORATORY,"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"P.","family":"Hilfinger","sequence":"additional","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"S.","family":"Graham","sequence":"additional","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"D.","family":"Bonachea","sequence":"additional","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"J.","family":"Su","sequence":"additional","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"A.","family":"Kamil","sequence":"additional","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"K.","family":"Datta","sequence":"additional","affiliation":[{"name":"COMPUTER SCIENCE DIVISION, UNIVERSITY OF CALIFORNIA AT BERKELEY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"P.","family":"Colella","sequence":"additional","affiliation":[{"name":"LAWRENCE BERKELEY NATIONAL LABORATORY"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"T.","family":"Wen","sequence":"additional","affiliation":[{"name":"LAWRENCE BERKELEY NATIONAL LABORATORY"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"179","published-online":{"date-parts":[[2007,8,1]]},"reference":[{"key":"atypb1","volume-title":"Barrier inference, in Principles of Programming Languages","author":"Aiken, A.","year":"1998"},{"key":"atypb2","volume-title":"Program analysis and specialization for the C programming language, Ph.D. thesis, DIKU","author":"Andersen, L.O.","year":"1994"},{"key":"atypb3","volume-title":"Chombo","author":"Applied Numerical Algorithms Group (ANAG)."},{"key":"atypb4","doi-asserted-by":"publisher","DOI":"10.1177\/109434209100500306"},{"issue":"1","key":"atypb5","first-page":"25","volume":"180","author":"Balls, G.T.","year":"2002","journal-title":"Physics"},{"key":"atypb6","volume-title":"Workshop Communication Architecture for Clusters (CAC03) of IPDPS'03","author":"Bell, C."},{"key":"atypb7","volume-title":"20th International Parallel and Distributed Processing Symposium (IPDPS)","author":"Bell, C."},{"key":"atypb8","volume-title":"Evaluating support for global address space languages on the Cray X1, in 19th Annual International Conference on Supercomputing","author":"Bell, C.","year":"2004"},{"key":"atypb9","first-page":"484","volume":"53","author":"Berger, M.","year":"1984","journal-title":"Physics"},{"key":"atypb10","volume-title":"The Berkeley UPC compiler","author":"Berkeley UPC","year":"2002"},{"key":"atypb11","volume-title":"NESL: A nested data-parallel language","author":"Blelloch, G.","year":"1995"},{"key":"atypb12","doi-asserted-by":"publisher","DOI":"10.1155\/1993\/158246"},{"key":"atypb13","volume-title":"A garbage collector for C and C++","author":"Boehm, H."},{"key":"atypb14","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380180902"},{"key":"atypb15","volume-title":"GASNet specification","author":"Bonachea, D.","year":"2002"},{"key":"atypb16","volume-title":"2nd Workshop on Hardware\/Software Support for High Performance Scientific and Engineering Computing (SHPSEC-03)","author":"Bonachea, D."},{"key":"atypb17","volume-title":"Proceedings of the Fifth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming","author":"Carlson, W.W."},{"key":"atypb18","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2000.10006"},{"key":"atypb19","volume-title":"Proceedings of the 17th International Conference on Supercomputing (ICS)","author":"Chen, W."},{"key":"atypb20","volume-title":"Man page collections: Shared memory access (SHMEM)","author":"Cray Inc.","year":"2003"},{"key":"atypb21","volume-title":"Parallel programming in Split-C","author":"Culler, D.","year":"1993"},{"key":"atypb22","volume-title":"18th International Workshop on Languages and Compilers for Parallel Computing","author":"Datta, K."},{"key":"atypb23","volume-title":"Memory allocation costs in large C and C++ programs","author":"Detlefs, D.","year":"1993"},{"key":"atypb24","volume-title":"SISCI API User Guide, v1.0","author":"Dolphin Interconnect Solutions","year":"2001"},{"key":"atypb25","volume-title":"Proceedings of the 19th International Symposium on Computer Architecture","author":"von Eicken, T."},{"issue":"2","key":"atypb26","first-page":"216","volume":"93","author":"Frigo, M.","year":"2005","journal-title":"Proceedings of the IEEE, Special issue on program generation, optimization, and platform adaptation"},{"key":"atypb27","volume-title":"GASNet home page","author":"GASNet."},{"key":"atypb28","volume-title":"SIGPLAN Conference on Programming Language Design and Implementation","author":"Gay, D."},{"key":"atypb29","doi-asserted-by":"publisher","DOI":"10.1016\/S0021-9991(03)00319-X"},{"key":"atypb30","doi-asserted-by":"publisher","DOI":"10.1137\/040618734"},{"key":"atypb31","volume-title":"High Performance Fortran language specification","author":"High Performance Fortran Forum","year":"1997"},{"key":"atypb32","volume-title":"Titanium language reference manual","author":"Hilfinger, P.","year":"2001"},{"key":"atypb33","doi-asserted-by":"crossref","unstructured":"Hilfinger, P.N.\n                 and \n                    Colella, P.\n                 (1989). FIDIL: A language for scientific programming,\n                in \n                    R. Grossman\n                , ed. Symbolic computing: Applications to scientific computing,\n                    Frontiers in Applied Mathematics, chapter 5, pp.\n                97\u2014138, \n                    SIAM\n                .","DOI":"10.1137\/1.9781611971033.ch5"},{"key":"atypb34","volume-title":"LAPI programming guide","author":"Ibm","year":"2003"},{"key":"atypb35","volume-title":"Portable Operating System Interface (POSIX)","author":"Ieee","year":"2004"},{"key":"atypb36","volume-title":"GCC\/UPC compiler","author":"Intrepid Technology, Inc."},{"key":"atypb37","volume-title":"Proceeding of Seventh Workshop on Languages, Compilers, and Run-time Support for Scalable Systems (LCR 04)","author":"Kale, L.V."},{"key":"atypb38","volume-title":"SC '05: Proceedings of the 2005 ACM\/IEEE Conference on Supercomputing","author":"Kamil, A."},{"key":"atypb39","volume-title":"The 18th International Workshop on Languages and Compilers for Parallel Computing","author":"Kamil, A."},{"key":"atypb40","doi-asserted-by":"publisher","DOI":"10.1145\/240732.240741"},{"key":"atypb41","doi-asserted-by":"publisher","DOI":"10.1145\/355841.355847"},{"key":"atypb42","doi-asserted-by":"publisher","DOI":"10.1080\/10637190410001725481"},{"key":"atypb43","doi-asserted-by":"publisher","DOI":"10.1145\/325694.325717"},{"key":"atypb44","doi-asserted-by":"publisher","DOI":"10.1023\/B:IJPP.0000029272.69895.c1"},{"key":"atypb45","volume-title":"International Parallel Computational Fluid Dynamics Conference (CFD'99)","author":"McCorquodale, P."},{"key":"atypb46","doi-asserted-by":"publisher","DOI":"10.1016\/S0022-5223(19)39218-9"},{"key":"atypb47","volume-title":"Mellanox IB-Verbs API (VAPI)","author":"Mellanox Technologies Inc.","year":"2001"},{"key":"atypb48","volume-title":"Analysis of a contractile torus simulation in Titanium","author":"Merchant, S.","year":"2003"},{"key":"atypb49","volume-title":"MPI: A message-passing interface standard","author":"MPI Forum","year":"1995"},{"key":"atypb50","first-page":"1","volume":"12","author":"MPI Forum","year":"1998","journal-title":"International Journal of High Performance Computing Applications"},{"key":"atypb51","volume-title":"The GM message passing system","author":"Myricom Inc.","year":"2002"},{"key":"atypb52","volume-title":"Proceedings of RTSPP IPPS\/SDP'99","author":"Nieplocha, J."},{"key":"atypb53","doi-asserted-by":"publisher","DOI":"10.1145\/289918.289920"},{"key":"atypb54","volume-title":"Open64 project","author":"Open64."},{"key":"atypb55","volume-title":"OpenMP specifications","author":"OpenMp."},{"key":"atypb56","volume-title":"Flow patterns around heart valves: A digital computer method for solving the equations of motion","author":"Peskin, C.","year":"1972"},{"key":"atypb57","doi-asserted-by":"publisher","DOI":"10.1017\/S0962492902000077"},{"key":"atypb58","volume-title":"Proceedings of the IEEE\/ACM SC2002 Conference","author":"Pike, G."},{"key":"atypb59","volume-title":"9th SIAM Conference on Parallel Processing for Scientific Computing","author":"Pike, G."},{"key":"atypb60","volume-title":"Reordering and storage optimizations for scientific programs, Ph.D. thesis","author":"Pike, G.R.","year":"2002"},{"key":"atypb61","unstructured":"Quadrics Supercomputing. Elan programmer's manual."},{"key":"atypb62","doi-asserted-by":"publisher","DOI":"10.7551\/mitpress\/5622.001.0001"},{"key":"atypb63","volume-title":"19th International Parallel and Distributed Processing Symposium (IPDPS)","author":"Su, J."},{"key":"atypb64","volume-title":"Compiler and runtime support for scaling adaptive mesh refinement computations in Titanium","author":"Su, J.Z.","year":"2006"},{"key":"atypb65","volume-title":"UPC specification","author":"UPC Community Forum.","year":"2005"},{"key":"atypb66","volume-title":"19th International Parallel and Distributed Processing Symposium (IPDPS)","author":"Wen, T."},{"key":"atypb67","volume-title":"Experiences in using Titanium for simulation of immersed boundary biological systems, Masters Report, Computer Science Division","author":"Yau, S.M.","year":"2002"},{"key":"atypb68","doi-asserted-by":"publisher","DOI":"10.1002\/(SICI)1096-9128(199809\/11)10:11\/13<825::AID-CPE383>3.0.CO;2-H"}],"container-title":["The International Journal of High Performance Computing Applications"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1177\/1094342007078449","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1177\/1094342007078449","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,29]],"date-time":"2026-04-29T08:18:33Z","timestamp":1777450713000},"score":1,"resource":{"primary":{"URL":"https:\/\/journals.sagepub.com\/doi\/10.1177\/1094342007078449"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2007,8]]},"references-count":68,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2007,8]]}},"alternative-id":["10.1177\/1094342007078449"],"URL":"https:\/\/doi.org\/10.1177\/1094342007078449","relation":{},"ISSN":["1094-3420","1741-2846"],"issn-type":[{"value":"1094-3420","type":"print"},{"value":"1741-2846","type":"electronic"}],"subject":[],"published":{"date-parts":[[2007,8]]}}}