A Reference-Counting Garbage Collection Algorithm for Cyclical Functional Programming

被引:0
|
作者
Trancon y Widemann, Baltasar [1 ]
机构
[1] Univ Bayreuth, D-95440 Bayreuth, Germany
来源
ISMM'08: PROCEEDINGS OF THE 2008 INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT | 2008年
关键词
memory management; garbage collection; reference counting; cycles; functional programming;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Reference-counting garbage collection is known to have problems with the collection of cyclically connected data. There are two historically significant styles of cycle-aware algorithms: The style of Brownbridge that maintains a subset of marked edges and the invariant that every cycle contains at least one marked edge, and the style of Martinez-Lins-Wachenchauzer (MLW) that involves local mark-and-scan procedures to detect cycles. The former is known to be difficult to design and implement correctly, and the latter to have pathological efficiency for a number of very typical Situations. We present a novel algorithm that combines both approaches to obtain reasonably efficient local mark-and-scan phases with a marking invariant that is rather cheap to maintain. We demonstrate that the assumptions of this algorithm about mutator activity patterns make it well-suited, but not limited, to a functional programming technique for cyclic data. We evaluate the approach in comparison with simple and more sophisticated MLW algorithms using a simple benchmark based oil that functional paradigm.
引用
收藏
页码:71 / 80
页数:10
相关论文
共 42 条
  • [21] Mark without much Sweep Algorithm for Garbage Collection
    Basch, Danko
    Ivancic, Dorian
    Hlupic, Nikica
    AUTOMATIKA, 2014, 55 (04) : 514 - 525
  • [22] Adding Support for Reference Counting in the D Programming Language
    Nitu, Razvan
    Staniloiu, Eduard
    Deaconescu, Razvan
    Rughinis, Razvan
    PROCEEDINGS OF THE 17TH INTERNATIONAL CONFERENCE ON SOFTWARE TECHNOLOGIES (ICSOFT), 2022, : 299 - 306
  • [23] Reference Object Processing in On-The-Fly Garbage Collection
    Ugawa, Tomoharu
    Jones, Richard E.
    Ritson, Carl G.
    ACM SIGPLAN NOTICES, 2014, 49 (11) : 59 - 69
  • [24] Transformation of Active Reference Graph into Passive Reference Graph for Distributed Garbage Collection
    Lakshmi, B. Seetha
    Balapriya, C. D.
    Soniya, R.
    ADVANCES IN PARALLEL, DISTRIBUTED COMPUTING, 2011, 203 : 44 - 52
  • [25] A Single-Trace Cycle Collection for Reference Counting Systems
    Hou, Ting-Wei
    Lin, Chin-Yang
    Ma, Tien-Yan
    2009 10TH INTERNATIONAL SYMPOSIUM ON PERVASIVE SYSTEMS, ALGORITHMS, AND NETWORKS (ISPAN 2009), 2009, : 40 - 45
  • [26] Generational Garbage Collection Algorithm Based on Lifespan Prediction
    Xin Ren
    Ying Zhangxu
    2016 IEEE 4TH INTERNATIONAL CONFERENCE ON FUTURE INTERNET OF THINGS AND CLOUD WORKSHOPS (FICLOUDW), 2016, : 183 - 187
  • [27] Efficient Garbage Collection Algorithm for Low Latency SSD
    Ae, Jin
    Hong, Youpyo
    ELECTRONICS, 2022, 11 (07)
  • [28] Analysis of the multi-phase copying garbage collection algorithm
    Podhorszki, N
    DISTRIBUTED AND PARALLEL SYSTEMS: CLUSTER AND GRID COMPUTING, 2005, 777 : 193 - 200
  • [29] Analysis of the multi-phase copying garbage collection algorithm
    Podhorszki, Norbert
    INTERNATIONAL JOURNAL OF COMPUTATIONAL SCIENCE AND ENGINEERING, 2009, 4 (03) : 204 - 212
  • [30] An efficient merging algorithm for recovery and garbage collection in incremental checkpointing
    Heo, J
    Yi, S
    Hong, J
    Cho, Y
    Choi, J
    PROCEEDINGS OF THE IASTED INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING AND NETWORKS, 2004, : 364 - 368