{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,28]],"date-time":"2025-11-28T21:12:22Z","timestamp":1764364342248,"version":"3.40.3"},"publisher-location":"Cham","reference-count":29,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319699523"},{"type":"electronic","value":"9783319699530"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2018]]},"DOI":"10.1007\/978-3-319-69953-0_7","type":"book-chapter","created":{"date-parts":[[2018,3,19]],"date-time":"2018-03-19T10:54:32Z","timestamp":1521456872000},"page":"109-127","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":8,"title":["MACC: An OpenACC Transpiler for Automatic Multi-GPU Use"],"prefix":"10.1007","author":[{"given":"Kazuaki","family":"Matsumura","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mitsuhisa","family":"Sato","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Taisuke","family":"Boku","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Artur","family":"Podobas","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Satoshi","family":"Matsuoka","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2018,3,20]]},"reference":[{"key":"7_CR1","unstructured":"Global Scientific Information and Computing Center, Tokyo Institute of Technology. TSUBAME. http:\/\/www.gsic.titech.ac.jp\/en\/tsubame"},{"key":"7_CR2","unstructured":"NVIDIA: DGX SATURNV Supercomputer for AI and Deep Learning. https:\/\/www.cscs.ch\/computers\/piz-daint\/"},{"key":"7_CR3","unstructured":"Oak Ridge Leadership Computing Facility. Summit. https:\/\/www.olcf.ornl.gov\/summit\/"},{"key":"7_CR4","unstructured":"NVIDIA: About CUDA. https:\/\/developer.nvidia.com\/about-cuda"},{"key":"7_CR5","unstructured":"The Khronos Group Inc.: OpenCL Overview. https:\/\/jp.khronos.org\/opencl\/"},{"key":"7_CR6","unstructured":"OpenACC-standard.org. OpenACC. https:\/\/www.openacc.org\/"},{"key":"7_CR7","unstructured":"The OpenMP ARB: The OpenMP API specification for parallel programming. http:\/\/www.openmp.org"},{"key":"7_CR8","unstructured":"Unified Memory in CUDA 6: NVIDIA. https:\/\/devblogs.nvidia.com\/parallelforall\/unified-memory-in-cuda-6\/"},{"key":"7_CR9","unstructured":"NVIDIA NVLink High-Speed Interconnect. NVIDIA. http:\/\/www.nvidia.com\/object\/nvlink.html"},{"key":"7_CR10","doi-asserted-by":"crossref","unstructured":"Komoda, T., Miwa, S., Nakamura, H., Maruyama, N.: Integrating multi-GPU execution in an OpenACC compiler. In: The 42nd International Conference on Parallel Processing (ICPP) (2013)","DOI":"10.1109\/ICPP.2013.35"},{"issue":"4","key":"7_CR11","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2544100","volume":"10","author":"Thejas Ramashekar","year":"2013","unstructured":"Ramashekar, T., Bondhugula, U.: Automatic data allocation and buffer management for multi-GPU machines. ACM Trans. Architect. Code Optim. (TACO) 10(4) (2013)","journal-title":"ACM Transactions on Architecture and Code Optimization"},{"key":"7_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"140","DOI":"10.1007\/978-3-319-29778-1_9","volume-title":"Languages and Compilers for Parallel Computing","author":"P Sakdhnagool","year":"2016","unstructured":"Sakdhnagool, P., Sabne, A., Eigenmann, R.: HYDRA: extending shared address programming for accelerator clusters. In: Shen, X., Mueller, F., Tuck, J. (eds.) LCPC 2015. LNCS, vol. 9519, pp. 140\u2013155. Springer, Cham (2016). https:\/\/doi.org\/10.1007\/978-3-319-29778-1_9"},{"issue":"11","key":"7_CR13","doi-asserted-by":"publisher","first-page":"2970","DOI":"10.1109\/TPDS.2014.2365192","volume":"26","author":"TRW Scogland","year":"2015","unstructured":"Scogland, T.R.W., Feng, W.-C., Rountree, B., de Supinski, B.R.: CoreTSAR: core task-size adapting runtime. IEEE Trans. Parallel Distrib. Syst. (TPDS) 26(11), 2970\u20132983 (2015)","journal-title":"IEEE Trans. Parallel Distrib. Syst. (TPDS)"},{"key":"7_CR14","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1155\/2015\/621730","volume":"2015","author":"Rengan Xu","year":"2015","unstructured":"Xu, R., Tian, X., Chandrasekaran, S., Chapman, B.: Multi-GPU support on single node using directive-based programming model. In: Scientific Programming (2015)","journal-title":"Scientific Programming"},{"key":"7_CR15","doi-asserted-by":"crossref","unstructured":"Chakravarty, M.M.T., Keller, G., Lee, S., McDonel, T.L., Grover, V.: Accelerating haskell array codes with multicore GPUs. In: The Sixth Workshop on Declarative Aspects of Multicore Programming (DAMP) (2011)","DOI":"10.1145\/1926354.1926358"},{"key":"7_CR16","doi-asserted-by":"crossref","unstructured":"Svensson, B.J., Vollmer, M., Holk, E., McDonell, T.L., Newton, R.R.: Converting data-parallelism to task-parallelism by rewrites. In: 4th ACM SIGPLAN Workshop on Functional High-Performance Computing (FHPC) (2015)","DOI":"10.1145\/2808091.2808093"},{"key":"7_CR17","doi-asserted-by":"crossref","unstructured":"Nakao, M., Murai, H., Shimosaka, T., Tabuchi, A., Hanawa, T., Kodama, Y., Boku, T., Sato, M.: XcalableACC: extension of XcalableMP PGAS language using OpenACC for accelerator clusters. In: 2014 First Workshop on Accelerator Programming using Directives (WACCPD) (2014)","DOI":"10.1109\/WACCPD.2014.6"},{"key":"7_CR18","doi-asserted-by":"crossref","unstructured":"Kim, J., Lee, S., Vetter, J.S.: An OpenACC-based unified programming model for multi-accelerator systems. In: The 20th ACM symposium on Principles and Practice of Parallel Programming (PPoPP) (2015)","DOI":"10.1145\/2688500.2688531"},{"key":"7_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/978-3-642-36036-7_1","volume-title":"Languages and Compilers for Parallel Computing","author":"O Kwon","year":"2013","unstructured":"Kwon, O., Jubair, F., Min, S.-J., Bae, H., Eigenmann, R., Midkiff, S.P.: Automatic scaling of OpenMP beyond shared memory. In: Rajopadhye, S., Mills Strout, M. (eds.) LCPC 2011. LNCS, vol. 7146, pp. 1\u201315. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-36036-7_1"},{"key":"7_CR20","volume-title":"Compilers: Principles, Techniques, and Tools","author":"AV Aho","year":"2006","unstructured":"Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, 2nd edn. Addison-Wesley, Reading (2006)","edition":"2"},{"key":"7_CR21","unstructured":"Bondhugula, U., Hartono, A., Ramanujam, J., Sadayappan, P.: A practical automatic polyhedral parallelizer and locality optimizer. In: ACM SIGPLAN Programming Languages Design and Implementation (PLDI) (2008). http:\/\/pluto-compiler.sourceforge.net"},{"key":"7_CR22","unstructured":"Omni Compiler Project: Omni Compiler. http:\/\/omni-compiler.org"},{"key":"7_CR23","unstructured":"Omni Compiler Project: XcodeML. http:\/\/omni-compiler.org\/xcodeml.html"},{"key":"7_CR24","unstructured":"NVIDIA: Tesla P100 Most Advanced Data Center Accelerator. http:\/\/www.nvidia.com\/object\/tesla-p100.html"},{"key":"7_CR25","unstructured":"ACCC: RIKEN. Himeno benchmark. http:\/\/accc.riken.jp\/en\/supercom\/himenobmt\/"},{"key":"7_CR26","unstructured":"NASA Advanced Supercomputing Division. NAS Parallel Benchmarks. https:\/\/www.nas.nasa.gov\/publications\/npb.html"},{"key":"7_CR27","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"67","DOI":"10.1007\/978-3-319-17473-0_5","volume-title":"Languages and Compilers for Parallel Computing","author":"R Xu","year":"2015","unstructured":"Xu, R., Tian, X., Chandrasekaran, S., Yan, Y., Chapman, B.: NAS parallel benchmarks for GPGPUs using a directive-based programming model. In: Brodman, J., Tu, P. (eds.) LCPC 2014. LNCS, vol. 8967, pp. 67\u201381. Springer, Cham (2015). https:\/\/doi.org\/10.1007\/978-3-319-17473-0_5 . https:\/\/github.com\/uhhpctools\/openacc-npb"},{"key":"7_CR28","doi-asserted-by":"crossref","unstructured":"Danalis, A., Marin, G., McCurdy, C., Meredith, J.S., Roth, P.C., Spafford, K., Tipparaju, V., Vetter, J.S.: The scalable heterogeneous computing (SHOC) benchmark suite. In: Third Workshop on General-Purpose Computation on Graphics Processing Units (GPGPU-3) (2010). https:\/\/github.com\/vetter\/shoc\/tree\/openacc","DOI":"10.1145\/1735688.1735702"},{"key":"7_CR29","unstructured":"Grauer-Gray, S., Xu, L., Searles, R., Ayalasomayajula, S., Cavazos, J.: Auto-tuning a high-level language targeted to GPU codes. In: Proceedings of Innovative Parallel Computing (InPar) (2012). https:\/\/cavazos-lab.github.io\/PolyBench-ACC\/"}],"container-title":["Lecture Notes in Computer Science","Supercomputing Frontiers"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-69953-0_7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,10,12]],"date-time":"2019-10-12T23:53:57Z","timestamp":1570924437000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-69953-0_7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783319699523","9783319699530"],"references-count":29,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-69953-0_7","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2018]]}}}