{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,9,2]],"date-time":"2026-09-02T03:59:11Z","timestamp":1788321551525,"version":"build-2803163510"},"reference-count":65,"publisher":"Association for Computing Machinery (ACM)","issue":"4","funder":[{"DOI":"10.13039\/100000001","name":"NSF","doi-asserted-by":"publisher","award":["OAC-2403239"],"award-info":[{"award-number":["OAC-2403239"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Graph."],"published-print":{"date-parts":[[2025,8,1]]},"abstract":"<jats:p>\n                    We present a system for dynamic triangle mesh processing entirely on the GPU. Our system features an efficient data structure that enables rapid updates to mesh connectivity and attributes. By partitioning the mesh into small patches, we process all dynamic updates for each patch within the GPU's fast shared memory. This approach leverages\n                    <jats:italic toggle=\"yes\">speculative processing<\/jats:italic>\n                    for conflict handling, minimizing rollback costs, maximizing parallelism, and reducing locking overhead. Additionally, we introduce a new programming model for dynamic mesh processing. This model provides concise semantics for dynamic updates, abstracting away concerns about conflicting updates during parallel execution. At the core of our model is the\n                    <jats:italic toggle=\"yes\">cavity operator<\/jats:italic>\n                    , a general mesh update operator that facilitates any dynamic operation by removing a set of mesh elements and inserting new ones into the resulting void. We applied our system to various GPU applications, including isotropic remeshing, surface tracking, mesh decimation, and Delaunay edge flips. On large inputs, our system achieves an order-of-magnitude speedup compared to multi-threaded CPU solutions and is more than two orders of magnitude faster than state-of-the-art single-threaded CPU solutions. Furthermore, our data structure outperforms state-of-the-art GPU\n                    <jats:italic toggle=\"yes\">static<\/jats:italic>\n                    data structures in terms of both speed and memory efficiency.\n                  <\/jats:p>","DOI":"10.1145\/3731162","type":"journal-article","created":{"date-parts":[[2025,7,27]],"date-time":"2025-07-27T04:02:22Z","timestamp":1753588942000},"page":"1-19","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":7,"title":["Dynamic Mesh Processing on the GPU"],"prefix":"10.1145","volume":"44","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1857-913X","authenticated-orcid":false,"given":"Ahmed H.","family":"Mahmoud","sequence":"first","affiliation":[{"name":"Computer Science and Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, MA, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1523-9199","authenticated-orcid":false,"given":"Serban D.","family":"Porumbescu","sequence":"additional","affiliation":[{"name":"Electrical and Computer Engineering, University of California, Davis, Davis, CA, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6582-8237","authenticated-orcid":false,"given":"John D.","family":"Owens","sequence":"additional","affiliation":[{"name":"Electrical and Computer Engineering, University of California, Davis, Davis, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2025,7,27]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.13256"},{"key":"e_1_2_2_2_1","unstructured":"Advanced Micro Devices Inc. (AMD). 2023. AMD EPYC\u2122 9004 Series Server Processors. https:\/\/www.amd.com\/content\/dam\/amd\/en\/documents\/products\/epyc\/epyc-9004-series-processors-data-sheet.pdf."},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1002\/fld.4893"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2018.00052"},{"key":"e_1_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1137\/1.9781611977578.ch3"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS47924.2020.00081"},{"key":"e_1_2_2_7_1","doi-asserted-by":"crossref","unstructured":"Bruce G. Baumgart. 1972. Winged Edge Polyhedron Representation. Technical Report STAN-CS-72-320. Stanford University Computer Science Department Stanford CA USA. https:\/\/apps.dtic.mil\/dtic\/tr\/fulltext\/u2\/755141.pdf","DOI":"10.21236\/AD0755141"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2892632"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2312005.2312058"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1057432.1057457"},{"key":"e_1_2_2_11_1","doi-asserted-by":"crossref","unstructured":"Mario Botsch Leif Kobbelt Mark Pauly Pierre Alliez and Bruno L\u00e9vy. 2010. Polygon Mesh Processing. AK Peters \/ CRC Press. 250 pages. https:\/\/hal.inria.fr\/inria-00538098","DOI":"10.1201\/b10688"},{"key":"e_1_2_2_12_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"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/73833.73858"},{"key":"e_1_2_2_14_1","volume-title":"El Topo: Robust Topological Operations for Dynamic Explicit Surfaces. https:\/\/github.com\/tysonbrochu\/eltopo.","author":"Tyson Brochu","year":"2018","unstructured":"Tyson Brochu et al. 2018. El Topo: Robust Topological Operations for Dynamic Explicit Surfaces. https:\/\/github.com\/tysonbrochu\/eltopo."},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1137\/080737617"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2019.00039"},{"key":"e_1_2_2_17_1","volume-title":"Proceedings of the 24th European Workshop on Computational Geometry (EuroCG 2008","author":"Cheng Siu-Wing","year":"2008","unstructured":"Siu-Wing Cheng and Tamal K Dey. 2008. Delaunay edge flips in dense surface triangulations. In Proceedings of the 24th European Workshop on Computational Geometry (EuroCG 2008). https:\/\/arxiv.org\/abs\/0712.1959"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cag.2016.03.002"},{"key":"e_1_2_2_19_1","unstructured":"Paolo Cignoni et al. 2023. VCGLib: The Visualization and Computer Graphics Library. https:\/\/vcg.isti.cnr.it\/vcglib\/"},{"key":"e_1_2_2_20_1","unstructured":"Luca Cirrottola and Algiane Froehly. 2019. Parallel unstructured mesh adaptation using iterative remeshing and repartitioning. Research Report RR-9307. INRIA Bordeaux \u00e9quipe CARDAMOM. https:\/\/inria.hal.science\/hal-02386837"},{"key":"e_1_2_2_21_1","unstructured":"Michael Dawson-Haggerty et al. 2019. trimesh. https:\/\/trimsh.org\/"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/311535.311576"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2063384.2063396"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cad.2013.08.044"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/3587421.3595422"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/69624.357206"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/282918.282923"},{"key":"e_1_2_2_28_1","volume-title":"The Art of Multiprocessor Programming","author":"Herlihy Maurice","unstructured":"Maurice Herlihy, Nir Shavit, Victor Luchangco, and Michael Spear. 2021. The Art of Multiprocessor Programming (2nd ed.). Morgan Kaufmann.","edition":"2"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/237170.237216"},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814935"},{"key":"e_1_2_2_31_1","doi-asserted-by":"crossref","unstructured":"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_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/3550454.3555513"},{"key":"e_1_2_2_33_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"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/3208159.3208195"},{"key":"e_1_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1273442.1250759"},{"key":"e_1_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.14863"},{"key":"e_1_2_2_37_1","unstructured":"Oliver Laric. 2023. Three D Scans. https:\/\/threedscans.com\/."},{"key":"e_1_2_2_38_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.finel.2021.103561"},{"key":"e_1_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/3272127.3275042"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/TIT.1982.1056489"},{"key":"e_1_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cad.2016.09.008"},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.2514\/6.2013-152"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-02335-9_30"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/3450626.3459748"},{"key":"e_1_2_2_45_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."},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.13934"},{"key":"e_1_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2366145.2366171"},{"key":"e_1_2_2_48_1","unstructured":"The Boost organization. 2023. Boost C++ Libraries. https:\/\/www.boost.org\/"},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1002\/cav.2101"},{"key":"e_1_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00371-014-1039-x"},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2601097.2601132"},{"key":"e_1_2_2_52_1","doi-asserted-by":"publisher","DOI":"10.5555\/1352079.1352134"},{"key":"e_1_2_2_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/1993498.1993501"},{"key":"e_1_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cag.2019.08.014"},{"key":"e_1_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/3414685.3417778"},{"key":"e_1_2_2_56_1","unstructured":"Nicholas Sharp Keenan Crane et al. 2019. GeometryCentral: A modern C++ library of data structures and algorithms for geometry processing. https:\/\/geometry-central.net\/. (2019)."},{"key":"e_1_2_2_57_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"},{"key":"e_1_2_2_58_1","unstructured":"Smithsonian Institution Digitization Program Office. 2023. Smithsonian 3D Digitization. https:\/\/3d.si.edu\/."},{"key":"e_1_2_2_59_1","doi-asserted-by":"publisher","DOI":"10.2312\/hpg.20231139"},{"key":"e_1_2_2_60_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11227-021-04158-9"},{"key":"e_1_2_2_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3550454.3555430"},{"key":"e_1_2_2_62_1","doi-asserted-by":"publisher","DOI":"10.1111\/cgf.13144"},{"key":"e_1_2_2_63_1","doi-asserted-by":"publisher","DOI":"10.1145\/3581784.3607062"},{"key":"e_1_2_2_64_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","journal-title":"A Dataset of"},{"key":"e_1_2_2_65_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.compmedimag.2012.03.001"}],"container-title":["ACM Transactions on Graphics"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3731162","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,3,27]],"date-time":"2026-03-27T17:55:45Z","timestamp":1774634145000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3731162"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,7,27]]},"references-count":65,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2025,8,1]]}},"alternative-id":["10.1145\/3731162"],"URL":"https:\/\/doi.org\/10.1145\/3731162","relation":{},"ISSN":["0730-0301","1557-7368"],"issn-type":[{"value":"0730-0301","type":"print"},{"value":"1557-7368","type":"electronic"}],"subject":[],"published":{"date-parts":[[2025,7,27]]},"assertion":[{"value":"2025-07-27","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}