A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
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
An efficient, incremental, automatic garbage collector
Communications of the ACM
Compilation and delayed evaluation in APL
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The Smalltalk-76 programming system design and implementation
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Anatomy of LISP
CAW '80 Proceedings of the fifth workshop on Computer architecture for non-numeric processing
The Apiary network architecture for knowledgeable systems
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
Address/memory management for a gigantic LISP environment or, GC considered harmful
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
ACTOR SYSTEMS FOR REAL-TIME COMPUTATION
ACTOR SYSTEMS FOR REAL-TIME COMPUTATION
Lisp machine manual
Survey on special purpose computer architectures for AI
ACM SIGART Bulletin
A foundation for programming environments
SDE 2 Proceedings of the second ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
A third generation Smalltalk-80 implementation
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Swamp: a fast processor for Smalltalk-80
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Using prototypical objects to implement shared behavior in object-oriented systems
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Incremental incrementally compacting garbage collection
SIGPLAN '87 Papers of the Symposium on Interpreters and interpretive techniques
Storage reclamation in object oriented database systems
SIGMOD '87 Proceedings of the 1987 ACM SIGMOD international conference on Management of data
Improving locality of reference in a garbage-collecting memory management system
Communications of the ACM
Safety consideration for storage allocation optimizations
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Real-time concurrent collection on stock multiprocessors
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Multiprocessor Smalltalk: a case study of a multiprocessor-based programming environment
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Opportunistic garbage collection
ACM SIGPLAN Notices
Tenuring policies for generation-based storage reclamation
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
Garbarge collection for Prolog based on WAM
Communications of the ACM
Atomic garbage collection: managing a stable heap
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Lifetime analysis of dynamically allocated objects
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Demonic memory for process histories
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Design of the opportunistic garbage collector
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Incremental distribution of timestamp packets: a new approach to distributed garbage collection
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Extending the operating system to support an object-oriented environment
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Trap architectures for Lisp systems
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Comparing mark-and sweep and stop-and-copy garbage collection
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Combining generational and conservative garbage collection: framework and implementations
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An advisor for flexible working sets
SIGMETRICS '90 Proceedings of the 1990 ACM SIGMETRICS conference on Measurement and modeling of computer systems
Virtual memory primitives for user programs
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
Effective “static-graph” reorganization to improve locality in garbage-collected systems
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Communications of the ACM - Special issue on LISP
Real-time programming in Common Lisp
Communications of the ACM - Special issue on LISP
An adaptive tenuring policy for generation scavengers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Parallel generational garbage collection
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Using key object opportunism to collect old objects
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
The design and implementation of a log-structured file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Some issues and strategies in heap management and memory hierarchies
ACM SIGPLAN Notices
ACM SIGARCH Computer Architecture News
A comprehensive analytical model for garbage collection algorithms
ACM SIGPLAN Notices
Reducing the latency of a real-time garbage collector
ACM Letters on Programming Languages and Systems (LOPLAS)
CONS should not CONS its arguments, or, a lazy alloc is a smart alloc
ACM SIGPLAN Notices
The treadmill: real-time garbage collection without motion sickness
ACM SIGPLAN Notices
Caching considerations for generational garbage collection
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
A foundation for an efficient multi-threaded scheme system
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
Lively linear Lisp: “look ma, no garbage!”
ACM SIGPLAN Notices
A customizable substrate for concurrent languages
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The design and implementation of a log-structured file system
ACM Transactions on Computer Systems (TOCS)
Infant mortality and generational garbage collection
ACM SIGPLAN Notices
Improving the cache locality of memory allocation
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Using lifetime predictors to improve memory allocation performance
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Guardians in a generation-based garbage collector
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
A concurrent copying garbage collector for languages that distinguish (im)mutable data
PPOPP '93 Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming
Generational garbage collection for Haskell
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Polling efficiently on stock hardware
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Safe and leakproof resource management using Ada83 limited types
ACM SIGAda Ada Letters
Equal rights for functional objects or, the more things change, the more they are the same
ACM SIGPLAN OOPS Messenger
Protection traps and alternatives for memory management of an object-oriented language
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Atomic incremental garbage collection and recovery for a large stable heap
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Performance evaluation of ephemeral logging
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Sleeping with the enemy: Lisp and C in a large, profitable real-time application
LUV '92 Proceedings of the 1992 conference on Lisp users and vendors
Memory subsystem performance of programs using copying garbage collection
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Implementation of the typed call-by-value λ-calculus using a stack of regions
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Cache performance of garbage-collected programs
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Characterization of object behaviour in Standard ML of New Jersey
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
A bibliography on garbage collection and related topics
ACM SIGPLAN Notices
Partition selection policies in object database garbage collection
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Self-adaptive, on-line reclustering of complex object data
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Hardware and software support for efficient exception handling
ASPLOS VI Proceedings of the sixth international conference on Architectural support for programming languages and operating systems
Composing first-class transactions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Garbage collection using a dynamic threatening boundary
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
Purely functional random-access lists
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Extended ephemeral logging: log storage management for applications with long lived transactions
ACM Transactions on Database Systems (TODS)
Generational garbage collection and the radioactive decay model
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
The measured cost of copying garbage collection mechanisms
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Research Demonstration of a Hardware Reference-Counting Heap
Lisp and Symbolic Computation
Ephemerons: a new finalization mechanism
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Combining card marking with remembered sets: how to save scanning time
Proceedings of the 1st international symposium on Memory management
Using generational garbage collection to implement cache-conscious data placement
Proceedings of the 1st international symposium on Memory management
Very concurrent mark-&-sweep garbage collection without fine-grain synchronization
Proceedings of the 1st international symposium on Memory management
Garbage collecting the Internet: a survey of distributed garbage collection
ACM Computing Surveys (CSUR)
A strongly typed, interactive object-oriented database programming language
OODS '86 Proceedings on the 1986 international workshop on Object-oriented database systems
A protocol for distributed reference counting
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Distributed copying garbage collection
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
ICMS: an intelligent cell memory system for real-time engineering applications
Proceedings of the 1986 ACM SIGSMALL/PC symposium on Small systems
THESIS: the hardware environment for small intelligent systems, for engineering applications
Proceedings of the 1986 ACM SIGSMALL/PC symposium on Small systems
Parallel garbage collection without synchronization overhead
ISCA '85 Proceedings of the 12th annual international symposium on Computer architecture
Memory organization and management for linked data structures
CSC '91 Proceedings of the 19th annual conference on Computer Science
A persistent runtime system using persistent data structures
SAC '96 Proceedings of the 1996 ACM symposium on Applied Computing
A fully associative software-managed cache design
Proceedings of the 27th annual international symposium on Computer architecture
Memory-efficient state lookups with fast updates
Proceedings of the conference on Applications, Technologies, Architectures, and Protocols for Computer Communication
A generational on-the-fly garbage collector for Java
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
Performance analysis of on-the-fly garbage collection
Communications of the ACM
Exploiting prolific types for memory management and optimizations
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Understanding the connectivity of heap objects
Proceedings of the 3rd international symposium on Memory management
Visualising the train garbage collector
Proceedings of the 3rd international symposium on Memory management
In or out?: putting write barriers in their place
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
Combining region inference and garbage collection
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
An experimental study of renewal-older-first garbage collection
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
A Dynamic C-Based Object-Oriented System for Unix
IEEE Software
A Highly Effective Partition Selection Policy for Object Database Garbage Collection
IEEE Transactions on Knowledge and Data Engineering
Garbage Collection in a Distributed Object-Oriented System
IEEE Transactions on Knowledge and Data Engineering
Segment Order Preserving and Generational Garbage Collection for Prolog
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
Garbage Collection Algorithms for Java-Based Prolog Engines
PADL '03 Proceedings of the 5th International Symposium on Practical Aspects of Declarative Languages
Dynamic Grouping in an Object-Oriented Virtual Memory Hierarchy
ECOOP '87 Proceedings of the European Conference on Object-Oriented Programming
A Study of the Allocation Behavior of the SPECjvm98 Java Benchmark
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
Concurrent Remembered Set Refinement in Generational Garbage Collection
Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium
Comparing Reference Counting and Global Mark-and-Sweep on Parallel Computers
LCR '98 Selected Papers from the 4th International Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers
Older-first garbage collection in practice: evaluation in a Java Virtual Machine
Proceedings of the 2002 workshop on Memory system performance
Implementing a family of distributed garbage collectors
ACSC '03 Proceedings of the 26th Australasian computer science conference - Volume 16
Garbage collection in a large LISP system
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Generation Scavenging: A non-disruptive high performance storage reclamation algorithm
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Partitioned garbage collection of a large stable heap
IWOOOS '96 Proceedings of the 5th International Workshop on Object Orientation in Operating Systems (IWOOOS '96)
Garbage Collection for Hard Real-Time Systems
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
Log Compaction and Garbage Collection: What could they Bring to Each Other?
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
Mark-copy: fast copying GC with less space overhead
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Ulterior reference counting: fast garbage collection without a long wait
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Real-time concurrent collection on stock multiprocessors
ACM SIGPLAN Notices - Best of PLDI 1979-1999
Oil and Water? High Performance Garbage Collection in Java with MMTk
Proceedings of the 26th International Conference on Software Engineering
Myths and realities: the performance impact of garbage collection
Proceedings of the joint international conference on Measurement and modeling of computer systems
The garbage collection advantage: improving program locality
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
MC2: high-performance garbage collection for memory-constrained environments
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Finding your cronies: static analysis for dynamic object colocation
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Garbage-first garbage collection
Proceedings of the 4th international symposium on Memory management
Dynamic object sampling for pretenuring
Proceedings of the 4th international symposium on Memory management
Using page residency to balance tradeoffs in tracing garbage collection
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Garbage collection without paging
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Yama: A Scalable Generational Garbage Collector for Java in Multiprocessor Systems
IEEE Transactions on Parallel and Distributed Systems
A parallel, incremental, mostly concurrent garbage collector for servers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Generating object lifetime traces with Merlin
ACM Transactions on Programming Languages and Systems (TOPLAS)
Reducing generational copy reserve overhead with fallback compaction
Proceedings of the 5th international symposium on Memory management
Portable, mostly-concurrent, mostly-copying garbage collection for multi-processors
Proceedings of the 5th international symposium on Memory management
Minimizing GC work by analysis of live objects
ACM SIGPLAN Notices
The development of Chez Scheme
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
Linear combinations of radioactive decay models for generational garbage collection
Science of Computer Programming - Special issue on five perspectives on modern memory management: Systems, hardware and theory
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 2007 ACM symposium on Applied computing
Data layouts for object-oriented programs
Proceedings of the 2007 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
File system logging versus clustering: a performance comparison
TCON'95 Proceedings of the USENIX 1995 Technical Conference Proceedings
Heuristic cleaning algorithms in log-structured file systems
TCON'95 Proceedings of the USENIX 1995 Technical Conference Proceedings
Hot-swapping between a mark&sweep and a mark&compact garbage collector in a generational environment
JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
COOTS'01 Proceedings of the 6th conference on USENIX Conference on Object-Oriented Technologies and Systems - Volume 6
A DSL approach for object memory management of small devices
Proceedings of the 5th international symposium on Principles and practice of programming in Java
Garbage collection: Java application servers' Achilles heel
Science of Computer Programming
AMIDA: a sequence diagram extraction toolkit supporting automatic phase detection
Companion of the 30th international conference on Software engineering
A study of Java object demographics
Proceedings of the 7th international symposium on Memory management
A DSL approach for object memory management of small devices
Proceedings of the 4th workshop on Programming languages and operating systems
Caml trading – experiences with functional programming on wall street
Journal of Functional Programming
Feature-level phase detection for execution trace using object cache
WODA '08 Proceedings of the 2008 international workshop on dynamic analysis: held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2008)
The Lightweight Runtime Engine of the Wireless Internet Platform for Mobile Devices
ICESS '07 Proceedings of the 3rd international conference on Embedded Software and Systems
Online Phase-Adaptive Data Layout Selection
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Allocation wall: a limiting factor of Java applications on emerging multi-core platforms
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
NUMA-aware memory manager with dominant-thread-based copying GC
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Integrating generations with advanced reference counting garbage collectors
CC'03 Proceedings of the 12th international conference on Compiler construction
Z-rays: divide arrays and conquer speed and flexibility
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Scalability limitations when running a Java web server on a chip multiprocessor
Proceedings of the 3rd Annual Haifa Experimental Systems Conference
Exploiting memory usage patterns to improve garbage collections in Java
Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java
Data Linkage Dynamics with Shedding
Fundamenta Informaticae - From Mathematical Beauty to the Truth of Nature: to Jerzy Tiuryn on his 60th Birthday
Index-compact garbage collection
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
Space profiling for parallel functional programs
Journal of Functional Programming
Waste not, want not: resource-based garbage collection in a shared environment
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
Bounded-latency regional garbage collection
Proceedings of the 7th symposium on Dynamic languages
Improve google android user experience with regional garbage collection
NPC'11 Proceedings of the 8th IFIP international conference on Network and parallel computing
Garbage collection in an embedded java virtual machine
KES'06 Proceedings of the 10th international conference on Knowledge-Based Intelligent Information and Engineering Systems - Volume Part I
Age-Oriented concurrent garbage collection
CC'05 Proceedings of the 14th international conference on Compiler Construction
Actor garbage collection using vertex-preserving actor-to-object graph transformations
GPC'10 Proceedings of the 5th international conference on Advances in Grid and Pervasive Computing
A signature-based Grid index design for main-memory RFID database applications
Journal of Systems and Software
A localized tracing scheme applied to garbage collection
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Autonomous garbage collection: resolving memory leaks in long-running server applications
Computer Communications
AS-GC: an efficient generational garbage collector for java application servers
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Taking off the gloves with reference counting Immix
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Proceedings of the 5th ACM/SPEC international conference on Performance engineering
Hi-index | 48.27 |
In previous heap storage systems, the cost of creating objects and garbage collection is independent of the lifetime of the object. Since objects with short lifetimes account for a large portion of storage use, it is worth optimizing a garbage collector to reclaim storage for these objects more quickly. The garbage collector should spend proportionately less effort reclaiming objects with longer lifetimes. We present a garbage collection algorithm that (1) makes storage for short-lived objects cheaper than storage for long-lived objects, (2) that operates in real time—object creation and access times are bounded, (3) increases locality of reference, for better virtual memory performance, (4) works well with multiple processors and a large address space.