{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,23]],"date-time":"2026-10-23T20:29:39Z","timestamp":1792787379781,"version":"4.5.0"},"reference-count":40,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2021,7,19]],"date-time":"2021-07-19T00:00:00Z","timestamp":1626652800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/100006234","name":"Sandia National Laboratories","doi-asserted-by":"publisher","id":[{"id":"10.13039\/100006234","id-type":"DOI","asserted-by":"publisher"}]},{"name":"DARPA AFRL","award":["FA8650-18-2-7835"],"award-info":[{"award-number":["FA8650-18-2-7835"]}]},{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["CCF-1637442"],"award-info":[{"award-number":["CCF-1637442"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]},{"name":"DARPA AFRL","award":["HR0011-18-3-0007"],"award-info":[{"award-number":["HR0011-18-3-0007"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Graph."],"published-print":{"date-parts":[[2021,8,31]]},"abstract":"<jats:p>\n                    We propose a new static high-performance mesh data structure for triangle surface meshes on the GPU. Our data structure is carefully designed for parallel execution while capturing mesh locality and confining data access, as much as possible, within the GPU's fast \"shared memory.\" We achieve this by subdividing the mesh into\n                    <jats:italic>patches<\/jats:italic>\n                    and representing these patches compactly using a matrix-based representation. Our patching technique is decorated with\n                    <jats:italic>ribbons<\/jats:italic>\n                    , thin mesh strips around patches that eliminate the need to communicate between different computation thread blocks, resulting in consistent high throughput. We call our data structure\n                    <jats:italic>RXMesh<\/jats:italic>\n                    : Ribbon-matriX Mesh. We hide the complexity of our data structure behind a flexible but powerful programming model that helps deliver high performance by inducing load balance even in highly irregular input meshes. We show the efficacy of our programming model on common geometry processing applications---mesh smoothing and filtering, geodesic distance, and vertex normal computation. For evaluation, we benchmark our data structure against well-optimized GPU and (single and multi-core) CPU data structures and show significant speedups.\n                  <\/jats:p>","DOI":"10.1145\/3450626.3459748","type":"journal-article","created":{"date-parts":[[2021,7,19]],"date-time":"2021-07-19T20:04:26Z","timestamp":1626725066000},"page":"1-16","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":22,"title":["RXMesh"],"prefix":"10.1145","volume":"40","author":[{"given":"Ahmed H.","family":"Mahmoud","sequence":"first","affiliation":[{"name":"University of California"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Serban D.","family":"Porumbescu","sequence":"additional","affiliation":[{"name":"University of California"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"John D.","family":"Owens","sequence":"additional","affiliation":[{"name":"University of California"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2021,7,19]]},"reference":[{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3108139"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2018.00052"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS47924.2020.00081"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/2892632"},{"key":"e_1_2_2_7_1","volume-title":"1st OpenSG Symposium. https:\/\/www.graphics.rwth-aachen.de\/media\/papers\/openmesh1.pdf","author":"Botsch M.","unstructured":"M. Botsch , S. Steinberg , S. Bischoff , and L. Kobbelt . 2002. OpenMesh - a generic and efficient polygon mesh data structure . In 1st OpenSG Symposium. https:\/\/www.graphics.rwth-aachen.de\/media\/papers\/openmesh1.pdf M. Botsch, S. Steinberg, S. Bischoff, and L. Kobbelt. 2002. OpenMesh - a generic and efficient polygon mesh data structure. In 1st OpenSG Symposium. https:\/\/www.graphics.rwth-aachen.de\/media\/papers\/openmesh1.pdf"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-49487-6"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1080\/10867651.1998.10487494"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.2312\/SGP\/SGP06\/181-190"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/1015706.1015817"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1080\/13658816.2017.1300804"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/311535.311576"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cad.2013.08.044"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00366-014-0378-6"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/882262.882368"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/282918.282923"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3355089.3356506"},{"key":"e_1_2_2_19_1","doi-asserted-by":"crossref","unstructured":"Alec Jacobson Daniele Panozzo etal 2018. libigl: A simple C++ geometry processing library. https:\/\/libigl.github.io\/.  Alec Jacobson Daniele Panozzo et al. 2018. libigl: A simple C++ geometry processing library. https:\/\/libigl.github.io\/.","DOI":"10.1145\/3134472.3134497"},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/38.491187"},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/3233302"},{"key":"e_1_2_2_22_1","unstructured":"Lutz Kettner. 2019. Halfedge Data Structures. In CGAL User and Reference Manual (4.14 ed.). CGAL Editorial Board. https:\/\/doc.cgal.org\/4.14\/Manual\/packages.html#PkgHalfedgeDS  Lutz Kettner. 2019. Halfedge Data Structures. In CGAL User and Reference Manual (4.14 ed.). CGAL Editorial Board. https:\/\/doc.cgal.org\/4.14\/Manual\/packages.html#PkgHalfedgeDS"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/TIT.1982.1056489"},{"key":"e_1_2_2_24_1","volume-title":"Zhou","author":"Lu Yu","year":"2016","unstructured":"Yu Lu and Harrison H . Zhou . 2016 . Statistical and Computational Guarantees of Lloyd's Algorithm and its Variants . arXiv:1612.02099v1 [math.ST] Yu Lu and Harrison H. Zhou. 2016. Statistical and Computational Guarantees of Lloyd's Algorithm and its Variants. arXiv:1612.02099v1 [math.ST]"},{"key":"e_1_2_2_25_1","volume-title":"Introduction to Solid Modeling","author":"M\u00e4ntyl\u00e4 M.","unstructured":"M. M\u00e4ntyl\u00e4 . 1988. Introduction to Solid Modeling . W. H. Freeman & Co. , New York, NY, USA . M. M\u00e4ntyl\u00e4. 1988. Introduction to Solid Modeling. W. H. Freeman & Co., New York, NY, USA."},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1080\/10867651.1999.10487501"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2818185"},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.13934"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.13245"},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/1731309.1731335"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/2366145.2366171"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cag.2019.08.014"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/SMA.2001.923399"},{"key":"e_1_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.12456"},{"key":"e_1_2_2_37_1","unstructured":"Jonathan Richard Shewchuk. 1994. An introduction to the conjugate gradient method without the agonizing pain. https:\/\/www.cs.cmu.edu\/~quake-papers\/painless-conjugate-gradient.pdf  Jonathan Richard Shewchuk. 1994. An introduction to the conjugate gradient method without the agonizing pain. https:\/\/www.cs.cmu.edu\/~quake-papers\/painless-conjugate-gradient.pdf"},{"key":"e_1_2_2_38_1","unstructured":"Smithsonian Institution Digitization Program Office. 2020. Smithsonian 3D Digitization. https:\/\/3d.si.edu\/.  Smithsonian Institution Digitization Program Office. 2020. Smithsonian 3D Digitization. https:\/\/3d.si.edu\/."},{"key":"e_1_2_2_39_1","first-page":"2006","volume-title":"Proceedings of WSCG (International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision). 157--162","author":"Robert","unstructured":"Robert F. Tobler and Stefan Maierhofer. 2006. A Mesh Data Structure for Rendering and Subdivision . In Proceedings of WSCG (International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision). 157--162 . http:\/\/www.vrvis.at\/publications\/PB-VRVis- 2006 - 2007 Robert F. Tobler and Stefan Maierhofer. 2006. A Mesh Data Structure for Rendering and Subdivision. In Proceedings of WSCG (International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision). 157--162. http:\/\/www.vrvis.at\/publications\/PB-VRVis-2006-007"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/3108140"},{"key":"e_1_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2018.00063"},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1015706.1015774"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.13144"},{"key":"e_1_2_2_44_1","first-page":"3D","article-title":"Thingi10K","volume":"10","author":"Zhou Qingnan","year":"2016","unstructured":"Qingnan Zhou and Alec Jacobson . 2016 . Thingi10K : A Dataset of 10 ,000 3D -Printing Models. CoRR (May 2016). arXiv:cs.GR\/1605.04797 Qingnan Zhou and Alec Jacobson. 2016. Thingi10K: A Dataset of 10,000 3D-Printing Models. CoRR (May 2016). arXiv:cs.GR\/1605.04797","journal-title":"A Dataset of"}],"container-title":["ACM Transactions on Graphics"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3450626.3459748","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3450626.3459748","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3450626.3459748","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T16:17:16Z","timestamp":1750177036000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3450626.3459748"}},"subtitle":["a GPU mesh data structure"],"short-title":[],"issued":{"date-parts":[[2021,7,19]]},"references-count":40,"aliases":["10.1145\/3476576.3476667"],"journal-issue":{"issue":"4","published-print":{"date-parts":[[2021,8,31]]}},"alternative-id":["10.1145\/3450626.3459748"],"URL":"https:\/\/doi.org\/10.1145\/3450626.3459748","relation":{},"ISSN":["0730-0301","1557-7368"],"issn-type":[{"value":"0730-0301","type":"print"},{"value":"1557-7368","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,7,19]]},"assertion":[{"value":"2021-07-19","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}