Design and Implementation of a Lightweight Cycle Detector for Reference Counting Garbage Collection Systems

碩士 === 國立成功大學 === 工程科學系碩博士班 === 92 ===   In this thesis, we focus on a major disadvantage of reference counting technique — the inability to reclaim cyclic data structures. We have developed a novel cycle detector whose time complexity is O(n). Compared to cycle detectors based on Lins’ approach tha...

Full description

Bibliographic Details
Main Authors: Chun-An Lai, 賴俊安
Other Authors: Ting-Wei Hou
Format: Others
Language:zh-TW
Published: 2004
Online Access:http://ndltd.ncl.edu.tw/handle/2vd7ge
Description
Summary:碩士 === 國立成功大學 === 工程科學系碩博士班 === 92 ===   In this thesis, we focus on a major disadvantage of reference counting technique — the inability to reclaim cyclic data structures. We have developed a novel cycle detector whose time complexity is O(n). Compared to cycle detectors based on Lins’ approach that need O(2n)~O(3n), ours is more efficient. We call it a “Lightweight Cycle Detector”.   For performance evaluation, we implemented the algorithm on a well-known Java execution environment, IBM Jikes RVM (Research Java Virtual machine), and used SPECjvm98 as the benchmark programs.   The measurements show that the Lightweight algorithm is indeed much more efficient than Bacon’s algorithm, a modern cycle detector based on Lins’ approach. The experiments also show that most of the garbage cycles generated by benchmark programs are collected successfully.