Mostly parallel garbage collection
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Real-time replication garbage collection
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
A concurrent, generational garbage collector for a multithreaded implementation of ML
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Portable, unobtrusive garbage collection for multiprocessor systems
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
On bounding time and space for multiprocessor garbage collection
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
A generational on-the-fly garbage collector for Java
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
List processing in real time on a serial computer
Communications of the ACM
On-the-fly garbage collection: an exercise in cooperation
Communications of the ACM
Multiprocessing compactifying garbage collection
Communications of the ACM
A generational mostly-concurrent garbage collector
Proceedings of the 2nd international symposium on Memory management
Implementing an on-the-fly garbage collector for Java
Proceedings of the 2nd international symposium on Memory management
Sapphire: copying GC without stopping the world
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande
A parallel, real-time garbage collector
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
A framework for reducing the cost of instrumented code
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
An on-the-fly reference counting garbage collector for Java
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Applying priorities to memory allocation
Proceedings of the 3rd international symposium on Memory management
A parallel, incremental and concurrent GC for servers
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
A real-time garbage collector with low overhead and consistent utilization
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Lock-Free Garbage Collection for Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
A Practical Multi-word Compare-and-Swap Operation
DISC '02 Proceedings of the 16th International Conference on Distributed Computing
Trading data space for reduced time and code space in real-time garbage collection on stock hardware
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
A Lock-Free Multiprocessor OS Kernel
ACM SIGOPS Operating Systems Review
An efficient parallel heap compaction algorithm
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the 4th international symposium on Memory management
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
A parallel, incremental, mostly concurrent garbage collector for servers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 5th international symposium on Memory management
Eventrons: a safe programming construct for high-frequency hard real-time applications
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
The Compressor: concurrent, incremental, and parallel compaction
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Concurrent GC leveraging transactional memory
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
A study of concurrent real-time garbage collectors
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Limits of parallel marking garbage collection
Proceedings of the 7th international symposium on Memory management
Path specialization: reducing phased execution overheads
Proceedings of the 7th international symposium on Memory management
Non-blocking object copy for real-time garbage collection
JTRES '08 Proceedings of the 6th international workshop on Java technologies for real-time and embedded systems
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Decoupled root scanning in multi-processor systems
CASES '08 Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems
A lock-free, concurrent, and incremental stack scanning for garbage collectors
Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Online reorganization of databases
ACM Computing Surveys (CSUR)
A lock-free, concurrent, and incremental stack scanning mechanism for garbage collectors
ACM SIGOPS Operating Systems Review
Real time Java on resource-constrained platforms with Fiji VM
Proceedings of the 7th International Workshop on Java Technologies for Real-Time and Embedded Systems
Schism: fragmentation-tolerant real-time garbage collection
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Concurrent, parallel, real-time garbage-collection
Proceedings of the 2010 international symposium on Memory management
Improved replication-based incremental garbage collection for embedded systems
Proceedings of the 2010 international symposium on Memory management
Nonblocking real-time garbage collection
ACM Transactions on Embedded Computing Systems (TECS)
Space overhead bounds for dynamic memory management with partial compaction
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Data-race exceptions have benefits beyond the memory model
Proceedings of the 2011 ACM SIGPLAN Workshop on Memory Systems Performance and Correctness
C4: the continuously concurrent compacting collector
Proceedings of the international symposium on Memory management
An efficient non-moving garbage collector for functional languages
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Assessing the scalability of garbage collectors on many cores
PLOS '11 Proceedings of the 6th Workshop on Programming Languages and Operating Systems
Hard real-time garbage collection for a Java chip multi-processor
Proceedings of the 9th International Workshop on Java Technologies for Real-Time and Embedded Systems
Assessing the scalability of garbage collectors on many cores
ACM SIGOPS Operating Systems Review
Tailor-made JVMs for statically configured embedded systems
Concurrency and Computation: Practice & Experience
And then there were none: a stall-free real-time garbage collector for reconfigurable hardware
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
Space overhead bounds for dynamic memory management with partial compaction
ACM Transactions on Programming Languages and Systems (TOPLAS)
A study of the scalability of stop-the-world garbage collectors on multicores
Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems
Hi-index | 0.00 |
We present Stopless: a concurrent real-time garbage collector suitable for modern multiprocessors running parallel multithreaded applications. Creating a garbage-collected environment that supports real-time on modern platforms is notoriously hard,especially if real-time implies lock-freedom. Known real-time collectors either restrict the real-time guarantees to uniprocessors only, rely on special hardware, or just give up supporting atomic operations (which are crucial for lock-free software). Stopless is the first collector that provides real-time responsiveness while preserving lock-freedom, supporting atomic operations, controlling fragmentation by compaction, and supporting modern parallel platforms. Stopless is adequate for modern languages such as C# or Java. It was implemented on top of the Bartok compiler and runtime for C# and measurements demonstrate high responsiveness (a factor of a 100 better than previously published systems), virtually no pause times, good mutator utilization, and acceptable overheads.