Concurrent Cycle Collection in Reference Counted Systems
نویسندگان
چکیده
Automatic storage reclamation via reference counting has important advantages, but has always suffered from a major weakness due to its inability to reclaim cyclic data structures. We describe a novel cycle collection algorithm that is both concurrent — it is capable of collecting garbage even in the presence of simultaneous mutation — and localized — it never needs to perform a global search of the entire data space. We describe our algorithm in detail and present a proof of correctness. We have implemented our algorithm in the Jalapeño Java virtual machine as part of the Recycler, a concurrent multiprocessor reference counting garbage collector that achieves maximum mutator pause times of only 6 milliseconds. We present measurements of the behavior of the cycle collection algorithm over a set of eight benchmarks that demonstrate the effectiveness of the algorithm at finding garbage cycles, handling concurrent mutation, and eliminating global tracing.
منابع مشابه
4.2 Improvement of Eciency 5 Problems and Its Solution 5.1 Specifying Groups 5.2 Unpredictable Cycles
Reference counting schemes are suitable for garbage collection on distributed systems because they do not require global information to nd garbage. However, reference counting schemes have a serious drawback: they cannot reclaim garbage which form cyclic structures. In this paper, we propose an extension of the traditional reference counting scheme, group reference counting, which alleviates th...
متن کاملA Multithreaded Concurrent Garbage Collector Parallelizing the New Instruction in Java
1 Parallel, multithreaded Java applications such as web servers, database servers, and scientific applications are becoming increasingly prevalent. Most of them have high object instantiation rates through the new bytecode that is implemented in a garbage collection subsystem typically. For aforementioned applications, traditional garbage collectors are often the bottleneck that limits program ...
متن کاملCyclic reference counting by typed reference fields
Reference counting strategy is a natural choice for real-time garbage collection, but the cycle collection phase which is required to ensure the correctness for reference counting algorithms can introduce heavy scanning overheads. This degrades the efficiency and inflates the pause time required for garbage collection. In this paper, we present two schemes to improve the efficiency of reference...
متن کاملP-100: Interpretation of Mice Vaginal Smears to Determine Estrous Cycle Based on Uterine and Ovary Tissue Sections
Background: Rodents with short reproductive cycle length are the best model for investigation of physiology and molecular aspects of reproductive biology. This study aimed to establish a correlation between histological changes of uterus and ovaries with the vaginal smear. Materials and Methods: 6-8 weeks old virgin Female NMRI mice were submitted to the vaginal smear collection and observed us...
متن کاملCycle Time Reduction and Runtime Rebalancing by Reallocating Dependent Tasks
Business Process Management Systems (BPMS) is a complex information system that provides designing, administrating, and improving the business processes. Task allocation to human resources is one of the most important issues which should be managed more efficiently in BPMS. Task allocation algorithms are defined in order to meet the various policies of organizations. The most important of these...
متن کامل