Academia.eduAcademia.edu

Garbage Collection

description2,309 papers
group905 followers
lightbulbAbout this topic
Garbage collection is a form of automatic memory management in computer science that reclaims memory occupied by objects that are no longer in use by a program, thereby preventing memory leaks and optimizing resource utilization. It involves identifying and disposing of unreferenced objects to free up system resources.
lightbulbAbout this topic
Garbage collection is a form of automatic memory management in computer science that reclaims memory occupied by objects that are no longer in use by a program, thereby preventing memory leaks and optimizing resource utilization. It involves identifying and disposing of unreferenced objects to free up system resources.

Key research themes

1. How can heap limit strategies be optimized to reduce memory usage and garbage collection time in multi-process environments?

This theme investigates automatic tuning of heap limits in garbage-collected runtimes, focusing on balancing the trade-off between memory usage and garbage collection (GC) time across multiple concurrent processes. Optimal allocation of heap memory limits among processes is critical for reducing overall memory footprint and GC overhead, especially in dynamic environments like web browsers. The research explores analytical frameworks and novel heap limit rules that coordinate memory allocation without inter-process communication to achieve minimal total GC time for a given memory budget.

Key finding: Introduces a compositional framework for setting heap limits across multiple garbage-collected heaps simultaneously, revealing that classic heap limit rules are sub-optimal when managing multiple processes. Derives a new... Read more

2. What novel garbage collection approaches enable safe and efficient memory management on blockchain and lock-free concurrent data structures?

This line of research centers on designing garbage collection (GC) algorithms tailored to specialized environments characterized by stringent requirements: perpetual application lifetime, determinism, incremental execution constraints on blockchain platforms, and lock-free concurrency that demands non-blocking reclamation without programmer intervention. Addressing fragmentation, bounded pause times, and lock-freedom necessitates new GC schemes that differ fundamentally from classical collectors. This theme also includes automatic reclamation frameworks for concurrent data structures, preserving progress guarantees critical for high-performance multi-threaded systems.

Key finding: Proposes a garbage collector specifically designed for WebAssembly-based blockchains like the Internet Computer, addressing long-lived smart contracts with significant monetary value. Employs incremental... Read more
Key finding: Presents the Automatic Optimistic Access (AOA) scheme, the first automatic, wait-free lock-free memory reclamation method that requires no explicit retire operations from the programmer or modifications to the original... Read more

3. How does detailed profiling and modeling of object lifetimes and heap behavior inform the design and evaluation of effective garbage collection strategies in managed runtimes?

This research investigates comprehensive analyses of object lifetime distributions, allocation patterns, and low-level memory behavior in managed runtimes, focusing predominantly on Java and JavaScript applications. By correlating high-level semantic allocation sites with microarchitectural metrics such as cache locality and memory pressure, researchers uncover object demographics beyond classical generational GC classifications. This theme encompasses heap modeling benchmarks, memory consumption-guided fuzz testing, and profiling tools that facilitate realistic characterization of workloads, enabling better tuning and evaluation of garbage collectors and memory allocators.

Key finding: Provides a detailed empirical study showing that object lifetimes in Java benchmarks cluster strongly around a small number of distinct lifetime distributions, which are stable across program inputs and phases. Demonstrates... Read more
Key finding: Introduces a profiling methodology combining high-level object profiler metrics and low-level microarchitectural hardware counters to characterize the memory behavior of 30 Java applications from Dacapo and Renaissance... Read more
Key finding: Develops ACDC-JS, a configurable JavaScript memory management benchmark synthesizing realistic allocation patterns derived from 13 real web applications. Shows that the benchmark exposes critical performance dimensions such... Read more
Key finding: Proposes MemConFuzz, a fuzzing approach guided by static data flow analysis to prioritize input seeds that exercise high heap memory consumption, exploiting data dependencies to identify potential memory consumption... Read more

All papers in Garbage Collection

Sanitation services still not fully cover the urban population and this leads to different types of pollution and affects the urban landscape. This paper aims a geographical approach by highlighting territorial disparities in the... more
Low coverage of urban and rural population to waste collection services leads to various environmental threats caused by uncontrolled waste disposal. New EU regulations on waste management issues transposed into national laws have... more
O presente artigo analisou as circunstancias que levaram a cidade de Antofagasta, capital da Segunda Região no Chile, a uma situação crítica de saúde ambiental e conflito socioambiental. Se analisam as consequências de como um má gestão... more
This paper elaborates the idea for building a self-sustained sensor system, a network composed of nodes implementing the Riemann Garbage Bin (RGB) model. Hence, the case study explores the potential of employing sensor enabled systems to... more
Public-private partnerships are increasingly being promoted in Tanzania and the central argument of this paper is that institutional framework of a given local authority determines the nature and character of the formation and operational... more
This study aims to examine Mamak Garbage Area and the residents in that neighbourhood within ecophobic discourse in terms of analysing why and how they have become the target of ecophobic psyche. Garbage areas in general constitute... more
The life cycle of basic food items was studied in order to discover the reasons for low landfill diversion rates of this material. Management failures at key points of the cycle were identified. Subjects of study were commercialization... more
This paper examines and analyses the historical development of Zimbabwean towns and cities with a view to tracing and understanding policy directions, urban spatial development trends and other factors such as population dynamics that may... more
THE WORLD BANK were collecting over 1,000 indicators, only three of which were common to all cities. This lack of standardization limits the ability of cities to observe trends, monitor process improvements, establish benchmarks, share... more
The paper explores the solid waste management issues in Bengaluru city. As of 2014, Bengaluru is the third most populous city of India, experiencing a huge growth in its massive population. The present population of Bengaluru city is... more
We present a novel dynamic analysis technique that finds real deadlocks in multi-threaded programs. Our technique runs in two stages. In the first stage, we use an imprecise dynamic analysis technique to find potential deadlocks in a... more
The effects of offering monetary incentives for performing environmentally desirable behaviours are investigated in the context of a pay-by-weight scheme for garbage collection. Effects on different types of recycling and on the... more
Reversible logic is one of the most vital issue at present time and it has different areas for its application, those are low power CMOS, quantum computing, nanotechnology, cryptography, optical computing, DNA computing, digital signal... more
Dynamic storage allocation is an important part of a large class of computer programs written in C and C++. High-performance algorithms for dynamic storage allocation have been, and will continue to be, of considerable interest. This... more
The availability of high-speed solid-state storage has introduced a new tier into the storage hierarchy. Low-latency and high-IOPS solid-state drives (SSDs) cache data in front of high-capacity disks. However, most existing SSDs are... more
A real-time garbage collector has to fulfill two conflicting properties: avoid heap fragmentation and provide short blocking time. The heap needs to be compacted to avoid probably unbounded fragmentation. During compaction all objects are... more
Lebanon has witnessed in 2015 a severe trash crisis that had serious health and environmental impacts. Trash crisis has recently evolved, and is mostly related to inefficiency in networking, political leadership, and strategic management... more
Garbage Collection (GC) is a core feature of multiple modern technologies (e.g., Java, Android). On one hand, it offers significant software engineering benefits over explicitly memory management, like preventing most types of memory... more
by Matthew Hertz and 
1 more
Programmers are writing a large and rapidly growing number of programs in object-oriented languages such as Java that require garbage collection (GC). To explore the design and evaluation of GC algorithms quickly, researchers are using... more
Squeak is an open, highly-portable Smalltalk implementation whose virtual machine is written entirely in Smalltalk, making it easy to debug, analyze, and change. To achieve practical performance, a translator produces an equivalent C... more
Implementing a new programming language by the means of a translator to an existing language is attractive as it provides portability over all platforms supported by the host language and reduces the development time as many low-level... more
A Java virtual machine (JVM) typically manages large amounts of class metadata (e.g. class descriptors, methods, byte codes) in main-memory. In this paper, we analyze the impact of metadata memory management on garbage collection costs in... more
Garbage collection yields numerous software engineering benefits, but its quantitative impact on performance remains elusive. One can compare the cost of conservative garbage collection to explicit memory management in C/C++ programs by... more
This paper objective to show the project standards concepts, being emphasize out its great importance and applicability in the software area. A case study it is carried through on four different applied project standards to the Garbage... more
Java is a strong player in the application server market and thus the performance of its virtual machine is an important aspect of a server's performance. One of the components that affect the performance of a JVM is the memory... more
Current FTL schemes have inevitable limitations in terms of memory requirement, performance, garbage collection overhead, and scalability. To overcome these limitations, we propose a workload adaptive flash translation layer referred to... more
Today more and more functionality is packed into all kinds of embedded systems, making high-level languages, such as Java, increasingly attractive as implementation languages. However, certain aspects, essential to high-level languages... more
Concurrent and incremental collectors require barriers to ensure correct synchronisation between mutator and collector. The over- heads imposed by particular barriers on particular systems have been widely studied. Somewhat fewer studies... more
This paper presents an approach for performance analysis of modern enterprise-class server applications. In our experience, performance bottlenecks in these applications differ qualitatively from bottlenecks in smaller, stand-alone... more
We present a memory management scheme for Java based on thread-local heaps. Assuming most objects are created and used by a single thread, it is desirable to free the memory manager from redundant synchronization for thread-local objects.... more
Page 1. A Java Virtual Machine Architecture for Very Small Devices Nik Shaylor Sun Microsystems Research Laboratories 2600 Casey Avenue Mountain View, CA 94043 USA nik.shaylor@sun.com Douglas N. Simon Sun Microsystems ...
The Real-time Specification for Java and the upcoming, and more restricted, Safety Critical Java standard have been designed to allow programmers to avoid pauses caused by automatic memory management algorithms. Dynamic memory is... more
One of the problems facing the use of Java for real-time environments with limited memory such as embedded systems is the unpredictability of running garbage collection. This introduces unexpected load on the system and causes undesirable... more
Solid-State Drives (SSDs) offer significant performance improvements over hard disk drives (HDD) on a number of workloads. The frequency of garbage collection (GC) activity is directly correlated with the pattern, frequency, and volume of... more
Heap size has a huge impact on the performance of garbage collected applications. A heap that barely meets the application's needs causes excessive GC overhead, while a heap that exceeds physical memory induces paging. Choosing the best... more
CIDA-AIT Partnership, SEA-UEMA Project Asian Institute of Technology Pathumthani, Thailand iv Preface This publication is a summary of learnings of the gender mainstreaming process under the Southeast Asia Urban Environmental Management... more
Region-based memory management can offer improved time performance, relatively good memory locality and reuse, and also provide better adherence to real-time constraints during execution, when compared against traditional garbage... more
This paper studies the level 1 cache performance of Java programs by analyzing memory reference traces of the SPECjvm98 applications executed by the Latte Java Virtual Machine. We study in detail Java programs' cache performance of... more
Traditional approaches to enforcing memory safety of programs rely heavily on run-time checks of memory accesses and on garbage collection, both of which are unattractive for embedded applications. The goal of our work is to develop... more
Download research papers for free!