{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,27]],"date-time":"2026-03-27T02:36:56Z","timestamp":1774579016845,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":34,"publisher":"ACM","license":[{"start":{"date-parts":[[2016,2,29]],"date-time":"2016-02-29T00:00:00Z","timestamp":1456704000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2016,2,29]]},"DOI":"10.1145\/2854038.2854041","type":"proceedings-article","created":{"date-parts":[[2016,3,1]],"date-time":"2016-03-01T15:33:04Z","timestamp":1456846384000},"page":"105-116","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":50,"title":["gpucc: an open-source GPGPU compiler"],"prefix":"10.1145","author":[{"given":"Jingyue","family":"Wu","sequence":"first","affiliation":[{"name":"Google, USA"}]},{"given":"Artem","family":"Belevich","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Eli","family":"Bendersky","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Mark","family":"Heffernan","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Chris","family":"Leary","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Jacques","family":"Pienaar","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Bjarke","family":"Roune","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Rob","family":"Springer","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Xuetian","family":"Weng","sequence":"additional","affiliation":[{"name":"Google, USA"}]},{"given":"Robert","family":"Hundt","sequence":"additional","affiliation":[{"name":"Google, USA"}]}],"member":"320","published-online":{"date-parts":[[2016,2,29]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"clang: a C language family frontend for LLVM. http:\/\/ clang.llvm.org\/ 2015.  clang: a C language family frontend for LLVM. http:\/\/ clang.llvm.org\/ 2015."},{"key":"e_1_3_2_1_2_1","volume-title":"http:\/\/clang.llvm.org\/docs\/ LibTooling.html","year":"2015","unstructured":"Libtooling. http:\/\/clang.llvm.org\/docs\/ LibTooling.html , 2015 . Libtooling. http:\/\/clang.llvm.org\/docs\/ LibTooling.html, 2015."},{"key":"e_1_3_2_1_3_1","volume-title":"Mar.","author":"GPU","year":"2015","unstructured":"Nervana GPU library. https:\/\/github.com\/ NervanaSystems\/nervanagpu , Mar. 2015 . NervanaGPU library. https:\/\/github.com\/ NervanaSystems\/nervanagpu, Mar. 2015."},{"key":"e_1_3_2_1_4_1","volume-title":"Sept.","author":"VPTX","year":"2015","unstructured":"User guide for N VPTX back-end. http:\/\/llvm.org\/docs\/ NVPTXUsage.html , Sept. 2015 . User guide for NVPTX back-end. http:\/\/llvm.org\/docs\/ NVPTXUsage.html, Sept. 2015."},{"key":"e_1_3_2_1_5_1","volume-title":"http:\/\/bit.ly\/1Jyh1FK","author":"0","year":"2015","unstructured":"Eigen 3. 0 Tensor module. http:\/\/bit.ly\/1Jyh1FK , 2015 . Eigen 3.0 Tensor module. http:\/\/bit.ly\/1Jyh1FK, 2015."},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/2228360.2228411"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISPASS.2009.4919648"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/178243.178257"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2011.15"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.procs.2012.04.209"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2009.5306797"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2014.20"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1454115.1454120"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/504709.504710"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1735688.1735702"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1854273.1854318"},{"key":"e_1_3_2_1_17_1","first-page":"22","volume-title":"Characterizing and enhancing global memory data coalescing on GPUs. CGO \u201915","author":"Fauzia N.","year":"2015","unstructured":"N. Fauzia , L.-N. Pouchet , and P. Sadayappan . Characterizing and enhancing global memory data coalescing on GPUs. CGO \u201915 , pages 12\u2013 22 , 2015 . N. Fauzia, L.-N. Pouchet, and P. Sadayappan. Characterizing and enhancing global memory data coalescing on GPUs. CGO \u201915, pages 12\u201322, 2015."},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/LLVM-HPC.2014.9"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1964179.1964184"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950409"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10766-014-0320-y"},{"key":"e_1_3_2_1_22_1","first-page":"158","volume-title":"Strength reduction via SSAPRE. CC \u201998","author":"Kennedy R.","year":"1998","unstructured":"R. Kennedy , F. C. Chow , P. Dahl , S.-M. Liu , R. Lo , and M. Streich . Strength reduction via SSAPRE. CC \u201998 , pages 144\u2013 158 , 1998 . R. Kennedy, F. C. Chow, P. Dahl, S.-M. Liu, R. Lo, and M. Streich. Strength reduction via SSAPRE. CC \u201998, pages 144\u2013158, 1998."},{"key":"e_1_3_2_1_23_1","first-page":"88","volume-title":"PLDI \u201904","author":"Lattner C.","year":"2004","unstructured":"C. Lattner and V. Adve . LLVM: A compilation framework for lifelong program analysis and transformation . In PLDI \u201904 , pages 75\u2013 88 , Mar. 2004 . C. Lattner and V. Adve. LLVM: A compilation framework for lifelong program analysis and transformation. In PLDI \u201904, pages 75\u201388, Mar. 2004."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2010.36"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2014.48"},{"key":"e_1_3_2_1_26_1","volume-title":"A cross-input adaptive framework for GPU programs optimization","author":"Liu Y.","year":"2008","unstructured":"Y. Liu , E. Z. Zhang , and X. Shen . A cross-input adaptive framework for GPU programs optimization , 2008 . Y. Liu, E. Z. Zhang, and X. Shen. A cross-input adaptive framework for GPU programs optimization, 2008."},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2636228.2636233"},{"key":"e_1_3_2_1_28_1","unstructured":"NVIDIA. Parallel thread execution ISA version 1.4.  NVIDIA. Parallel thread execution ISA version 1.4."},{"key":"e_1_3_2_1_29_1","unstructured":"NVIDIA. CUDA programming guide. http:\/\/docs. nvidia.com\/cuda\/cuda-c-programming-guide\/ Mar. 2015. Version 7.0.  NVIDIA. CUDA programming guide. http:\/\/docs. nvidia.com\/cuda\/cuda-c-programming-guide\/ Mar. 2015. Version 7.0."},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/MCSE.2010.69"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-89740-8_2"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2063384.2063431"},{"key":"e_1_3_2_1_33_1","first-page":"246","volume-title":"ISPASS \u201910","author":"Wong H.","year":"2010","unstructured":"H. Wong , M.-M. Papadopoulou , M. Sadooghi-Alvandi , and A. Moshovos . Demystifying GPU microarchitecture through microbenchmarking . In ISPASS \u201910 , pages 235\u2013 246 , March 2010 . H. Wong, M.-M. Papadopoulou, M. Sadooghi-Alvandi, and A. Moshovos. Demystifying GPU microarchitecture through microbenchmarking. In ISPASS \u201910, pages 235\u2013246, March 2010."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/2588768.2576789"}],"event":{"name":"CGO '16: 14th Annual IEEE\/ACM International Symposium on Code Generation and Optimization","location":"Barcelona Spain","acronym":"CGO '16","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGMICRO ACM Special Interest Group on Microarchitectural Research and Processing","IEEE-CS Computer Society"]},"container-title":["Proceedings of the 2016 International Symposium on Code Generation and Optimization"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2854038.2854041","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2854038.2854041","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T19:04:30Z","timestamp":1750273470000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2854038.2854041"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,2,29]]},"references-count":34,"alternative-id":["10.1145\/2854038.2854041","10.1145\/2854038"],"URL":"https:\/\/doi.org\/10.1145\/2854038.2854041","relation":{},"subject":[],"published":{"date-parts":[[2016,2,29]]},"assertion":[{"value":"2016-02-29","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}