{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,2]],"date-time":"2025-08-02T14:29:34Z","timestamp":1754144974138,"version":"3.41.2"},"reference-count":29,"publisher":"Association for Computing Machinery (ACM)","issue":"PLDI","funder":[{"name":"National Science Foundation, Directorate for Computer and Information Science and Engineering","award":["CCF-2340192"],"award-info":[{"award-number":["CCF-2340192"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2025,6,10]]},"abstract":"<jats:p>\n            Latency is a major concern for web rendering engines like those in Chrome, Safari, and Firefox. These engines reduce latency by using an\n            <jats:italic toggle=\"yes\">incremental layout algorithm<\/jats:italic>\n            to redraw the page when the user interacts with it. In such an algorithm, elements that change frame-to-frame are marked dirty, and only those elements are processed to draw the next frame, dramatically reducing latency. However, the standard incremental layout algorithm must search the page for dirty elements, accessing auxiliary elements in the process. These auxiliary elements add cache misses and stalled cycles, and are responsible for a sizable fraction of all layout latency.\n          <\/jats:p>\n          <jats:p>We introduce a new, faster incremental layout algorithm called Spineless Traversal. Spineless Traversal uses a cache-friendlier priority queue algorithm that avoids accessing auxiliary nodes and thus reduces cache traffic and stalls. This leads to dramatic speedups on the most latency-critical interactions such as hovering, typing, and animation. Moreover, thanks to numerous low-level optimizations, Spineless Traversal is competitive across the whole spectrum of incremental layout workloads. Spineless Traversal is faster than the standard approach on 83.0% of 2216\u00a0benchmarks, with a mean speedup of 1.80\u00d7 concentrated in the most latency-critical interactions.<\/jats:p>","DOI":"10.1145\/3729322","type":"journal-article","created":{"date-parts":[[2025,6,13]],"date-time":"2025-06-13T16:02:27Z","timestamp":1749830547000},"page":"1791-1813","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Spineless Traversal for Layout Invalidation"],"prefix":"10.1145","volume":"9","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-3418-4835","authenticated-orcid":false,"given":"Marisa","family":"Kirisame","sequence":"first","affiliation":[{"name":"University of Utah, Salt Lake City, USA"}]},{"ORCID":"https:\/\/orcid.org\/0009-0003-7002-6011","authenticated-orcid":false,"given":"Tiezhi","family":"Wang","sequence":"additional","affiliation":[{"name":"Tongji University, Shanghai, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2621-3592","authenticated-orcid":false,"given":"Pavel","family":"Panchekha","sequence":"additional","affiliation":[{"name":"University of Utah, Salt Lake City, USA"}]}],"member":"320","published-online":{"date-parts":[[2025,6,13]]},"reference":[{"volume-title":"Self-adjusting computation","author":"Acar Umut A","key":"e_1_2_2_1_1","unstructured":"Umut A Acar. 2005. Self-adjusting computation. Carnegie Mellon University."},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1480945.1480946"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/1806596.1806650"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/3409964.3461799"},{"key":"e_1_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45749-6_17"},{"volume-title":"Partially Evaluated","author":"Carette Jacques","key":"e_1_2_2_6_1","unstructured":"Jacques Carette, Oleg Kiselyov, and Chung-chieh Shan. 2007. Finally Tagless, Partially Evaluated. In Programming Languages and Systems, Zhong Shao (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg. 222\u2013238. isbn:978-3-540-76637-7"},{"key":"e_1_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/3503222.3507751"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/800070.802184"},{"key":"e_1_2_2_9_1","unstructured":"Tali Garseil. [n. d.]. How browsers work \u2014 taligarsiel.com. https:\/\/taligarsiel.com\/Projects\/howbrowserswork1.htm####Dirty_bit_system [Accessed 05-11-2024]"},{"key":"e_1_2_2_10_1","unstructured":"CSS Working Group. [n. d.]. All CSS specifications \u2014 w3.org. https:\/\/www.w3.org\/Style\/CSS\/specs.en.html [Accessed 14-11-2024]"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814270.2814305"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594324"},{"key":"e_1_2_2_13_1","unstructured":"Christopher Grant Jones Rose Liu Leo Meyerovich Krste Asanovic and Rastislav Bodik. [n. d.]. Parallelizing the web browser."},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/3591246"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/3635800.3637447"},{"key":"e_1_2_2_16_1","volume-title":"Proceedings of CIDR 2013 (proceedings of cidr 2013 ed.). https:\/\/www.microsoft.com\/en-us\/research\/publication\/differential-dataflow\/","author":"McSherry Frank","year":"2013","unstructured":"Frank McSherry, Derek Murray, Rebecca Isaacs, and Michael Isard. 2013. Differential dataflow. In Proceedings of CIDR 2013 (proceedings of cidr 2013 ed.). https:\/\/www.microsoft.com\/en-us\/research\/publication\/differential-dataflow\/"},{"volume-title":"Parallel Layout Engines: Synthesis and Optimization of Tree Traversals","author":"Meyerovich Leo Alexander","key":"e_1_2_2_17_1","unstructured":"Leo Alexander Meyerovich. 2013. Parallel Layout Engines: Synthesis and Optimization of Tree Traversals. University of California, Berkeley."},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1772690.1772763"},{"key":"e_1_2_2_19_1","first-page":"19","article-title":"Memo","volume":"218","author":"Michie Donald","year":"1968","unstructured":"Donald Michie. 1968. \u201cMemo\u201d Functions and Machine Learning. Nature, 218 (1968), 19\u201322. https:\/\/api.semanticscholar.org\/CorpusID:4265138","journal-title":"Functions and Machine Learning. Nature"},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1016\/0022-0000(78)90014-4"},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/3296979.3192407"},{"volume-title":"Web browser engineering","author":"Panchekha Pavel","key":"e_1_2_2_22_1","unstructured":"Pavel Panchekha and Chris Harrelson. 2024. Web browser engineering. Oxford University Press, London, England."},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2983990.2984010"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/ACCESS.2023.3242549"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/75277.75305"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/158511.158710"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/582153.582172"},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/512644.512645"},{"key":"e_1_2_2_29_1","unstructured":"Chrome Team. [n. d.]. Avoid an excessive DOM size | Lighthouse | Chrome for Developers \u2014 developer.chrome.com. https:\/\/developer.chrome.com\/docs\/lighthouse\/performance\/dom-size [Accessed 05-11-2024]"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3729322","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,16]],"date-time":"2025-07-16T06:07:14Z","timestamp":1752646034000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3729322"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,6,10]]},"references-count":29,"journal-issue":{"issue":"PLDI","published-print":{"date-parts":[[2025,6,10]]}},"alternative-id":["10.1145\/3729322"],"URL":"https:\/\/doi.org\/10.1145\/3729322","relation":{},"ISSN":["2475-1421"],"issn-type":[{"type":"electronic","value":"2475-1421"}],"subject":[],"published":{"date-parts":[[2025,6,10]]},"assertion":[{"value":"2024-11-15","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-03-06","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-06-13","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}