{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:47:47Z","timestamp":1772164067136,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":25,"publisher":"ACM","license":[{"start":{"date-parts":[[2018,6,18]],"date-time":"2018-06-18T00:00:00Z","timestamp":1529280000000},"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":[[2018,6,18]]},"DOI":"10.1145\/3210563.3210572","type":"proceedings-article","created":{"date-parts":[[2018,6,11]],"date-time":"2018-06-11T08:36:20Z","timestamp":1528706180000},"page":"29-44","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":2,"title":["Distributed garbage collection for general graphs"],"prefix":"10.1145","author":[{"given":"Steven R.","family":"Brandt","sequence":"first","affiliation":[{"name":"Louisiana State University, USA"}]},{"given":"Hari","family":"Krishnan","sequence":"additional","affiliation":[{"name":"Louisiana State University, USA"}]},{"given":"Costas","family":"Busch","sequence":"additional","affiliation":[{"name":"Louisiana State University, USA"}]},{"given":"Gokarna","family":"Sharma","sequence":"additional","affiliation":[{"name":"Kent State University, USA"}]}],"member":"320","published-online":{"date-parts":[[2018,6,18]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/292469.292471"},{"issue":"1","key":"e_1_3_2_1_2_1","first-page":"20","article-title":"Starting with termination: A methodology for building distributed garbage collection algorithms","volume":"23","author":"Blackburn Stephen M.","year":"2001","unstructured":"Stephen M. Blackburn , Richard L. Hudson , Ron Morrison , J. Eliot B. Moss , David S. Munro , and John Zigman . Starting with termination: A methodology for building distributed garbage collection algorithms . Aust. Comput. Sci. Commun. , 23 ( 1 ): 20 \u2013 28 , January 2001 . Stephen M. Blackburn, Richard L. Hudson, Ron Morrison, J. Eliot B. Moss, David S. Munro, and John Zigman. Starting with termination: A methodology for building distributed garbage collection algorithms. Aust. Comput. Sci. Commun., 23(1):20\u201328, January 2001.","journal-title":"Aust. Comput. Sci. Commun."},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2602988.2602990"},{"key":"e_1_3_2_1_4_1","series-title":"Lecture Notes in Computer Science","first-page":"288","volume-title":"Functional Programming Languages and Computer Architecture","author":"Brownbridge D.R.","unstructured":"D.R. Brownbridge . Cyclic reference counting for combinator machines . In Jean-Pierre Jouannaud, editor, Functional Programming Languages and Computer Architecture , volume 201 of Lecture Notes in Computer Science , pages 273\u2013 288 . 1985. Procedure action(sender): if cd = NULLthen return toggle() if old weight &lt; weightthen PhantomizeAll(sender) else if is initiator()then action initiator(sender) else if cd.recv = HEALTHYthen if cd.phantom count = 0 and cd.rcc = 0 and cd.wait count = 0then return to sender(sender) cd = NULL else if cd.recv = PHANTOMthen if not phantom flag() and (old weight &lt; weight or strong count = 0)then PhantomizeAll(sender) else if cd.incrRCC and phantom flag()then ClaimAll() else return to parent() else if cd.recv = RECOVERthen if cd.state, RECOVERthen if strong count &gt; 0then BuildAll(sender) else if phantom flag()then RecoverAll() else PhantomizeAll(sender) else if strong count &gt; 0then BuildAll(sender) else if weak count &gt; 0then PhantomizeAll(sender) else return to parent() else if cd.recv = BUILDthen if phantom flag()then BuildAll(sender) else return to parent() if cd.phantom count = 0then return to sender(sender) cd = NULL else if cd.recv = INFECTEDthen if cd.state, INFECTEDthen if phantom flag()then InfectAll() if ready() and strong count = 0 and weak count = 0 and cd.phantom count = 0then cd.state = DEAD Procedure Phantom Flag(): if cd = NULLthen return FALSE else return cd.state = PHANTOM or RECOVER or INFECTED D.R. Brownbridge. Cyclic reference counting for combinator machines. In Jean-Pierre Jouannaud, editor, Functional Programming Languages and Computer Architecture, volume 201 of Lecture Notes in Computer Science, pages 273\u2013288. 1985. Procedure action(sender): if cd = NULLthen return toggle() if old weight &lt; weightthen PhantomizeAll(sender) else if is initiator()then action initiator(sender) else if cd.recv = HEALTHYthen if cd.phantom count = 0 and cd.rcc = 0 and cd.wait count = 0then return to sender(sender) cd = NULL else if cd.recv = PHANTOMthen if not phantom flag() and (old weight &lt; weight or strong count = 0)then PhantomizeAll(sender) else if cd.incrRCC and phantom flag()then ClaimAll() else return to parent() else if cd.recv = RECOVERthen if cd.state, RECOVERthen if strong count &gt; 0then BuildAll(sender) else if phantom flag()then RecoverAll() else PhantomizeAll(sender) else if strong count &gt; 0then BuildAll(sender) else if weak count &gt; 0then PhantomizeAll(sender) else return to parent() else if cd.recv = BUILDthen if phantom flag()then BuildAll(sender) else return to parent() if cd.phantom count = 0then return to sender(sender) cd = NULL else if cd.recv = INFECTEDthen if cd.state, INFECTEDthen if phantom flag()then InfectAll() if ready() and strong count = 0 and weak count = 0 and cd.phantom count = 0then cd.state = DEAD Procedure Phantom Flag(): if cd = NULLthen return FALSE else return cd.state = PHANTOM or RECOVER or INFECTED"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/3156818"},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/2544173.2509557"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"crossref","DOI":"10.1201\/b17224","volume-title":"Distributed systems: an algorithmic approach","author":"Ghosh Sukumar","year":"2014","unstructured":"Sukumar Ghosh . Distributed systems: an algorithmic approach . CRC press , 2014 . Sukumar Ghosh. Distributed systems: an algorithmic approach. CRC press, 2014."},{"key":"e_1_3_2_1_8_1","volume-title":"15th Workshop on Hot Topics in Operating Systems (HotOS XV)","author":"Gog Ionel","year":"2015","unstructured":"Ionel Gog , Jana Giceva , Malte Schwarzkopf , Kapil Vaswani , Dimitrios Vytiniotis , Ganesan Ramalingam , Manuel Costa , Derek G Murray , Steven Hand , and Michael Isard . Broom : Sweeping out garbage collection from big data systems . In 15th Workshop on Hot Topics in Operating Systems (HotOS XV) , 2015 . Ionel Gog, Jana Giceva, Malte Schwarzkopf, Kapil Vaswani, Dimitrios Vytiniotis, Ganesan Ramalingam, Manuel Costa, Derek G Murray, Steven Hand, and Michael Isard. Broom: Sweeping out garbage collection from big data systems. In 15th Workshop on Hot Topics in Operating Systems (HotOS XV), 2015."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/800068.802147"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.5555\/2025255"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICPPW.2009.14"},{"key":"e_1_3_2_1_12_1","first-page":"213","volume-title":"Parallel programming with message-driven objects. Parallel programming using C+","author":"Kale Laxmikant V","year":"1996","unstructured":"Laxmikant V Kale and Sanjeev Krishnan . Charm++ : Parallel programming with message-driven objects. Parallel programming using C+ , pages 175\u2013 213 , 1996 . Laxmikant V Kale and Sanjeev Krishnan. Charm++: Parallel programming with message-driven objects. Parallel programming using C+, pages 175\u2013213, 1996."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDCS.1992.235116"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/277650.277715"},{"key":"e_1_3_2_1_15_1","volume-title":"15th Workshop on Hot Topics in Operating Systems (HotOS XV)","author":"Maas Martin","year":"2015","unstructured":"Martin Maas , Tim Harris , Krste Asanovi\u0107 , and John Kubiatowicz . Trash day : Coordinating garbage collection in distributed systems . In 15th Workshop on Hot Topics in Operating Systems (HotOS XV) , 2015 . Martin Maas, Tim Harris, Krste Asanovi\u0107, and John Kubiatowicz. Trash day: Coordinating garbage collection in distributed systems. In 15th Workshop on Hot Topics in Operating Systems (HotOS XV), 2015."},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1007\/s004460050026"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/259380.259444"},{"key":"e_1_3_2_1_18_1","first-page":"2001","article-title":"The uintah parallelism infrastructure: A performance evaluation on the sgi origin 2000","author":"McCorquodale John","year":"2001","unstructured":"John McCorquodale , JD de St Germain , S Parker , and CR Johnson . The uintah parallelism infrastructure: A performance evaluation on the sgi origin 2000 . High Performance Computing 2001 , 2001 . John McCorquodale, JD de St Germain, S Parker, and CR Johnson. The uintah parallelism infrastructure: A performance evaluation on the sgi origin 2000. High Performance Computing 2001, 2001.","journal-title":"High Performance Computing"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.5555\/355459"},{"key":"e_1_3_2_1_20_1","volume-title":"A Cyclic Reference Counting Algorithm and Its Proof . Internal report 88-10. Department of Informatics","author":"Pepels E.J.H.","year":"1988","unstructured":"E.J.H. Pepels , M.J. Plasmeijer , C.J.D. van Eekelen , and M.C.J.D. Eekelen . A Cyclic Reference Counting Algorithm and Its Proof . Internal report 88-10. Department of Informatics , Faculty of Science, University of Nijmegen , 1988 . E.J.H. Pepels, M.J. Plasmeijer, C.J.D. van Eekelen, and M.C.J.D. Eekelen. A Cyclic Reference Counting Algorithm and Its Proof . Internal report 88-10. Department of Informatics, Faculty of Science, University of Nijmegen, 1988."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.5555\/645647.664687"},{"key":"e_1_3_2_1_22_1","first-page":"176","volume-title":"POS","author":"Richer N.","year":"2000","unstructured":"N. Richer and M. Shapiro . The memory behavior of www, or the www considered as a persistent store . In POS , pages 161\u2013 176 , 2000 . N. Richer and M. Shapiro. The memory behavior of www, or the www considered as a persistent store. In POS, pages 161\u2013176, 2000."},{"key":"e_1_3_2_1_23_1","volume-title":"Implementation and analysis of two reference counting algorithms. Master thesis","author":"Salkild J.D.","year":"1987","unstructured":"J.D. Salkild . Implementation and analysis of two reference counting algorithms. Master thesis , University College , London , 1987 . J.D. Salkild. Implementation and analysis of two reference counting algorithms. Master thesis, University College, London, 1987."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/151646.151647"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2005.113"}],"event":{"name":"ISMM '18: The International Symposium on Memory Management 2018","location":"Philadelphia PA USA","acronym":"ISMM '18","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 2018 ACM SIGPLAN International Symposium on Memory Management"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3210563.3210572","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3210563.3210572","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:13:14Z","timestamp":1750198394000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3210563.3210572"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,6,18]]},"references-count":25,"alternative-id":["10.1145\/3210563.3210572","10.1145\/3210563"],"URL":"https:\/\/doi.org\/10.1145\/3210563.3210572","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/3299706.3210572","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2018,6,18]]},"assertion":[{"value":"2018-06-18","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}