{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,10]],"date-time":"2026-01-10T07:45:20Z","timestamp":1768031120154,"version":"3.49.0"},"publisher-location":"New York, NY, USA","reference-count":33,"publisher":"ACM","license":[{"start":{"date-parts":[[2011,1,23]],"date-time":"2011-01-23T00:00:00Z","timestamp":1295740800000},"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":[[2011,1,23]]},"DOI":"10.1145\/1926354.1926358","type":"proceedings-article","created":{"date-parts":[[2011,1,24]],"date-time":"2011-01-24T14:58:22Z","timestamp":1295881102000},"page":"3-14","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":179,"title":["Accelerating Haskell array codes with multicore GPUs"],"prefix":"10.1145","author":[{"given":"Manuel M.T.","family":"Chakravarty","sequence":"first","affiliation":[{"name":"University of New South Wales, Sydney, Australia"}]},{"given":"Gabriele","family":"Keller","sequence":"additional","affiliation":[{"name":"University of New South Wales, Sydney, Australia"}]},{"given":"Sean","family":"Lee","sequence":"additional","affiliation":[{"name":"University of New South Wales, Sydney, Australia &amp; NVIDIA Corporation, USA"}]},{"given":"Trevor L.","family":"McDonell","sequence":"additional","affiliation":[{"name":"University of New South Wales, Sydney, Australia"}]},{"given":"Vinod","family":"Grover","sequence":"additional","affiliation":[{"name":"NVIDIA Corporation, Santa Clara, CA, USA"}]}],"member":"320","published-online":{"date-parts":[[2011,1,23]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"Clyther 2010. URL http:\/\/clyther.sourceforge.net\/.  Clyther 2010. URL http:\/\/clyther.sourceforge.net\/."},{"key":"e_1_3_2_1_2_1","volume-title":"The Jacket documentation wiki","year":"2010","unstructured":"Accelereyes. The Jacket documentation wiki , 2010 . URL http:\/\/wiki.accelereyes.com\/. Accelereyes. The Jacket documentation wiki, 2010. URL http:\/\/wiki.accelereyes.com\/."},{"key":"e_1_3_2_1_3_1","series-title":"LNCS","first-page":"825","volume-title":"Computer Science Logic","author":"Altenkirch Thorsten","year":"2009","unstructured":"Thorsten Altenkirch and Bernhard Reus . Monadic presentations of lambda terms using generalized inductive types . In Computer Science Logic , volume 1683 of LNCS , pages 825 -- 825 . Springer-Verlag , 2009 . Thorsten Altenkirch and Bernhard Reus. Monadic presentations of lambda terms using generalized inductive types. In Computer Science Logic, volume 1683 of LNCS, pages 825--825. Springer-Verlag, 2009."},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1596638.1596644"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1654059.1654078"},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/FCCM.2010.51"},{"key":"e_1_3_2_1_8_1","volume-title":"Converting a HOAS term GADT into a de Bruijn term GADT","author":"Chakravarty Manuel M. T.","year":"2009","unstructured":"Manuel M. T. Chakravarty . Converting a HOAS term GADT into a de Bruijn term GADT , 2009 . URL http:\/\/www.cse.unsw.edu.au\/~chak\/haskell\/term-conv\/. Manuel M. T. Chakravarty. Converting a HOAS term GADT into a de Bruijn term GADT, 2009. URL http:\/\/www.cse.unsw.edu.au\/~chak\/haskell\/term-conv\/."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1086365.1086397"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1248648.1248652"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/110382.110597"},{"key":"e_1_3_2_1_12_1","volume-title":"Algorithmic Skeletons: Structured Management of Parallel Computation","author":"Cole Murray I.","year":"1989","unstructured":"Murray I. Cole . Algorithmic Skeletons: Structured Management of Parallel Computation . The MIT Press , 1989 . Murray I. Cole. Algorithmic Skeletons: Structured Management of Parallel Computation. The MIT Press, 1989."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1017472.1017482"},{"key":"e_1_3_2_1_14_1","volume-title":"Werling. Introducing Kansas Lava. In IFL '09: The Intl. Symp. on Impl. and Application of Functional Languages","volume":"6041","year":"2009","unstructured":"Gill, Bull, Kimmell, Perrins, Komp, and Werling. Introducing Kansas Lava. In IFL '09: The Intl. Symp. on Impl. and Application of Functional Languages , volume 6041 of LNCS. Springer-Verlag , 2009 . Gill, Bull, Kimmell, Perrins, Komp, and Werling. Introducing Kansas Lava. In IFL '09: The Intl. Symp. on Impl. and Application of Functional Languages, volume 6041 of LNCS. Springer-Verlag, 2009."},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1596638.1596653"},{"key":"e_1_3_2_1_16_1","volume-title":"The OpenCL specification, version 1.1. Technical report","author":"Khronos OpenCL Working Group","year":"2010","unstructured":"Khronos OpenCL Working Group . The OpenCL specification, version 1.1. Technical report , Khronos Group , 2010 . http:\/\/www.khronos. org\/opencl\/. Khronos OpenCL Working Group. The OpenCL specification, version 1.1. Technical report, Khronos Group, 2010. http:\/\/www.khronos. org\/opencl\/."},{"key":"e_1_3_2_1_17_1","volume-title":"Thrust: A parallel template library","author":"Hoberock Jared","year":"2010","unstructured":"Jared Hoberock and Nathan Bell . Thrust: A parallel template library , 2010 . URL http:\/\/www.meganewtons.com\/. Version 1.2.1. Jared Hoberock and Nathan Bell. Thrust: A parallel template library, 2010. URL http:\/\/www.meganewtons.com\/. Version 1.2.1."},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/242224.242477"},{"key":"e_1_3_2_1_20_1","first-page":"108","volume-title":"Parallel and Distributed Processing, Fourth International Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPS'99), number 1586 in LNCS","author":"Keller Gabriele","year":"1999","unstructured":"Gabriele Keller and Manuel M. T. Chakravarty . On the distributed implementation of aggregate data structures by program transformation . In Parallel and Distributed Processing, Fourth International Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPS'99), number 1586 in LNCS , pages 108 -- 122 . Springer-Verlag , 1999 . Gabriele Keller and Manuel M. T. Chakravarty. On the distributed implementation of aggregate data structures by program transformation. In Parallel and Distributed Processing, Fourth International Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPS'99), number 1586 in LNCS, pages 108--122. Springer-Verlag, 1999."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1863543.1863582"},{"key":"e_1_3_2_1_22_1","volume-title":"CoRR","author":"Kl\u00f6ckner Andreas","year":"2009","unstructured":"Andreas Kl\u00f6ckner , Nicolas Pinto , Yunsup Lee , Bryan C. Catanzaro , Paul Ivanov , and Ahmed Fasih . PyCUDA : GPU run-time code generation for high-performance computing . CoRR , 2009 . Andreas Kl\u00f6ckner, Nicolas Pinto, Yunsup Lee, Bryan C. Catanzaro, Paul Ivanov, and Ahmed Fasih. PyCUDA: GPU run-time code generation for high-performance computing. CoRR, 2009."},{"key":"e_1_3_2_1_23_1","volume-title":"Workshop on Exploiting Parallelism using GPUs and other Hardware-Assisted Methods (EPHAM 2009)","author":"Lee Sean","year":"2009","unstructured":"Sean Lee , Manuel M. T. Chakravarty , Vinod Grover , and Gabriele Keller . GPU kernels as data-parallel array computations in Haskell . In Workshop on Exploiting Parallelism using GPUs and other Hardware-Assisted Methods (EPHAM 2009) , 2009 . Sean Lee, Manuel M. T. Chakravarty, Vinod Grover, and Gabriele Keller. GPU kernels as data-parallel array computations in Haskell. In Workshop on Exploiting Parallelism using GPUs and other Hardware-Assisted Methods (EPHAM 2009), 2009."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1863523.1863533"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1015706.1015801"},{"key":"e_1_3_2_1_26_1","volume-title":"NVIDIA CUDA C Programming Guide 3.1.1","author":"NVIDIA.","year":"2010","unstructured":"NVIDIA. NVIDIA CUDA C Programming Guide 3.1.1 , 2010 . NVIDIA. NVIDIA CUDA C Programming Guide 3.1.1, 2010."},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1159803.1159811"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-10672-9_8"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/1411204.1411215"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/1280094.1280110"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/581690.581691"},{"issue":"1","key":"e_1_3_2_1_32_1","first-page":"2068","article-title":"GPGPU kernel implementation and refinement using Obsidian","volume":"1","author":"Svensson Joel","year":"2059","unstructured":"Joel Svensson , Koen Claessen , and Mary Sheeran . GPGPU kernel implementation and refinement using Obsidian . Procedia Computer Science , 1 ( 1 ): 2059 -- 2068 , 2010. ICCS 2010. Joel Svensson, Koen Claessen, and Mary Sheeran. GPGPU kernel implementation and refinement using Obsidian. Procedia Computer Science, 1(1):2059 -- 2068, 2010. ICCS 2010.","journal-title":"Procedia Computer Science"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1168857.1168898"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.parco.2008.12.006"},{"key":"e_1_3_2_1_35_1","volume-title":"Conf Proc IEEE Eng Med Biol Soc","author":"Xu Lin","year":"2008","unstructured":"Lin Xu and Justin W L Wan . Real-time intensity-based rigid 2D-3D medical image registration using RapidMind multi-core development platform . Conf Proc IEEE Eng Med Biol Soc , 2008: 5382-5, 2008 . Lin Xu and Justin W L Wan. Real-time intensity-based rigid 2D-3D medical image registration using RapidMind multi-core development platform. Conf Proc IEEE Eng Med Biol Soc, 2008:5382-5, 2008."}],"event":{"name":"POPL '11: The 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages","location":"Austin Texas USA","acronym":"POPL '11","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGACT ACM Special Interest Group on Algorithms and Computation Theory"]},"container-title":["Proceedings of the sixth workshop on Declarative aspects of multicore programming"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1926354.1926358","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1926354.1926358","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:59:51Z","timestamp":1750244391000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1926354.1926358"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011,1,23]]},"references-count":33,"alternative-id":["10.1145\/1926354.1926358","10.1145\/1926354"],"URL":"https:\/\/doi.org\/10.1145\/1926354.1926358","relation":{},"subject":[],"published":{"date-parts":[[2011,1,23]]},"assertion":[{"value":"2011-01-23","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}