{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,26]],"date-time":"2025-03-26T15:42:46Z","timestamp":1743003766403,"version":"3.40.3"},"publisher-location":"Singapore","reference-count":10,"publisher":"Springer Singapore","isbn-type":[{"type":"print","value":"9789811576829"},{"type":"electronic","value":"9789811576836"}],"license":[{"start":{"date-parts":[[2020,11,20]],"date-time":"2020-11-20T00:00:00Z","timestamp":1605830400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2020,11,20]],"date-time":"2020-11-20T00:00:00Z","timestamp":1605830400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Coarray features have been implemented on the Omni XcalableMP compiler with a source-to-source translator and layered runtime libraries. Three memory allocation methods for coarrays were implemented for the GASNet and MPI-3 communication libraries and the native interface of Fujitsu. For the coarray PUT\/GET communication, algorithms using DMA (zero-copy) and buffering were introduced. Important techniques for achieving high performance were the non-blocking PUT communication implemented in the runtime library and the optimization for the GET communication in the translator. Using the ping-pong benchmark and the modified version, the fundamental performance was evaluated and analyzed. The MPI version of the Himeno benchmark was ported to the coarray version and modified for fully using the non-blocking PUT. As a result of the evaluation, the non-blocking coarray version clearly outperformed the original and non-blocking MPI versions.<\/jats:p>","DOI":"10.1007\/978-981-15-7683-6_3","type":"book-chapter","created":{"date-parts":[[2020,11,19]],"date-time":"2020-11-19T13:11:21Z","timestamp":1605791481000},"page":"97-122","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Coarrays in the Context of XcalableMP"],"prefix":"10.1007","author":[{"given":"Hidetoshi","family":"Iwashita","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Masahiro","family":"Nakao","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2020,11,20]]},"reference":[{"unstructured":"XcalableMP Language Specification, http:\/\/xcalablemp.org\/specification.html","key":"3_CR1"},{"unstructured":"J. Reid, JKR Associates, UK. Coarrays in the next Fortran Standard. ISO\/IEC JTC1\/SC22\/WG5 N1824, April 21, 2010","key":"3_CR2"},{"unstructured":"ISO\/IEC TS 18508:2015, Information technology \u2013 Additional Parallel Features in Fortran, Technical Specification, December 1, 2015","key":"3_CR3"},{"unstructured":"Omni Compiler Project, http:\/\/omni-compiler.org","key":"3_CR4"},{"unstructured":"H. Iwashita, M. Nakao, M. Sato, Preliminary implementation of coarray Fortran translator based on Omni XcalableMP, in PGAS2015, Proceedings of 9th International Conference on PGAS Programming Models, Washington, DC (2015), pp.70\u201375","key":"3_CR5"},{"unstructured":"EPCC Fortran Coarray micro-benchmark suite, https:\/\/www.epcc.ed.ac.uk\/research\/computing\/performance-characterisation-and-benchmarking\/epcc-co-array-fortran-micro","key":"3_CR6"},{"unstructured":"Himeno Benchmark, http:\/\/accc.riken.jp\/en\/supercom\/himenobmt\/","key":"3_CR7"},{"unstructured":"J. Mellor-Crummey, L. Adhianto, W.N. Scherer III, G. Jin, PGAS\u201909, 3rd Conference on Partitioned Global Address Space Programming Models, Ashburn, VA (2009)","key":"3_CR8"},{"doi-asserted-by":"crossref","unstructured":"D. Eachempati, H.J. Jun, B. Chapman, An open-source compiler and runtime implementation for coarray Fortran, in PGAS\u201910, 4th Conference on Partitioned Global Address Space Programming Models, No.13 (2010)","key":"3_CR9","DOI":"10.1145\/2020373.2020386"},{"doi-asserted-by":"crossref","unstructured":"A. Fanfarillo, T. Burnus, V. Cardellini, S. Filippone, D. Nagle, D. Rouson, OpenCoarrays: open-source transport layers supporting coarray Fortran compilers, in PGAS\u201914, Proc. of 8th International Conference on Partitioned Global Address Space Programming Models, No. 4 (2014)","key":"3_CR10","DOI":"10.1145\/2676870.2676876"}],"container-title":["XcalableMP PGAS Programming Language"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-981-15-7683-6_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,11,19]],"date-time":"2020-11-19T13:12:41Z","timestamp":1605791561000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-981-15-7683-6_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,11,20]]},"ISBN":["9789811576829","9789811576836"],"references-count":10,"URL":"https:\/\/doi.org\/10.1007\/978-981-15-7683-6_3","relation":{},"subject":[],"published":{"date-parts":[[2020,11,20]]},"assertion":[{"value":"20 November 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}