On this page
Memory management What Every Programmer Should Know About Memory (2007) (Web )Memory Management Reference - Resource for programmers and computer scientists interested in memory management and garbage collection. (HN )Memory Pool System - Flexible and adaptable memory manager. Among its many advantages are an incremental garbage collector with very low pause times, and an extremely robust implementation. (Code )A unified theory of garbage collection (2004) (PDF ) (PDF )Memory Bandwidth Napkin Math (2020) Isolation Alloc - New general purpose secure memory allocator that implements an isolation security strategy to mitigate memory safety issues.Broom - Ergonomic tracing garbage collector that supports mark 'n sweep garbage collection.Writing a Memory Allocator (2019) (HN )Writing a Pool Allocator (2019) Writing a Mark-Sweep Garbage Collector (2020) rpmalloc - Cross platform lock free thread caching 16-byte aligned memory allocator implemented in C.memleax - Debugs memory leak of a running process by attaching it, without recompiling or restarting.An introduction to virtual memory (2020) (HN )Visualizing memory management in Rust (2020) Memory Allocators 101 - Write a simple memory allocator (2015) gperftools - Collection of a high-performance multi-threaded malloc() implementation, plus some pretty nifty performance analysis tools.Memory Consistency Models: A Tutorial (2016) (HN )The memory models that underlie programming languages (2016) (HN )Modern garbage collection (2016) - A look at the Go GC strategy.Virtual Memory Tricks (2017) Reference counting vs GC (2020) Memory allocator showdown (2020) Understanding memory initialization patterns Custom Allocators Demystified (2020) (HN )MMTk - Framework for the design and implementation of memory managers. In Rust.Quantifying the Performance of Garbage Collection vs. Explicit Memory Management (2005) The Lost Art of Structure Packing - Technique for reducing the memory footprint of programs in compiled languages with C-like structures - manually repacking these declarations for reduced size.klox - Proof-of-concept demonstration of O(1) garbage collection. (HN ) (Lobsters )herdtools7 - Tool suite to test weak memory models.Sound Garbage Collection for C using Pointer Provenance (2020) Memory Management in Lobster Generational references faster than reference counting (2021) (Lobsters )When allocators are hoarding your precious memory (2021) Writing a Simple Garbage Collector in C (2020) (Lobsters )A look into Automatic Reference Counting (2021) Papers for heap memory analysis and leak detection (2021) Memory Management Landscape Summarizing Garbage Collection (2016) Visualizing Garbage Collection Algorithms (2014) Baby's First Garbage Collector (2013) - Building simple mark-sweep garbage collector in C. (Code )Heapusage - Find memory leaks in Linux and macOS applications.Slitter - C- and Rust-callable slab allocator implemented primarily in Rust, with some C for performance or to avoid unstable Rust features.Mitigating Memory-Safety Bugs with Efficient Out-of-Process Integrity Checking (2021) A 5x reduction in RAM usage with Zoekt memory optimizations (2021) (HN )Friendship ended with the garbage collector (2021) (HN )Donβt forget about memory management β Go Time (2021) DUMA - Detect Unintended Memory Access. Red-Zone memory allocator.regalloc2 - New register allocator.Formalization of properties of a simple imperative, memory-safe language mtrace - Version of QEMU modified to log memory accesses and other system events to help analyze and understand the memory access patterns and cache line behavior of operating system-level code.Memory Performance in a Nutshell Awesome Allocators Interesting Garbage Collection Patterns (2021) SuperMalloc - Super Fast Multithreaded malloc() for 64-bit Machines.Mimalloc - Compact general purpose allocator with excellent performance.Mimalloc: Free List Sharding in Action (2019) (Lobsters )Garbage collection algorithms Vizzy - Tool for profiling heap usage and memory management.GCGC : Garbage Collection Graph Collector mem - Memory allocator for Go.100LOC C impl of memset, that is faster than glibc's (HN )Debugging memory corruption: who the hell writes β2β into my stack? (2016) (HN )bustd - Lightweight process killer daemon for out-of-memory scenarios for Linux.What's a Memory Allocator Anyway? - Benjamin Feng (2021) The Garbage Collection Handbook: The art of automatic memory management (2020) memflow - Physical memory introspection framework. (Web )scanflow - Comprehensive memory scanning library based on memflow.tinyalloc - Replacement for malloc / free in unmanaged, linear memory situations, e.g. WASM and embedded devices.gcmodule - Garbage collection for Rust inspired by CPython's gcmodule.Optimising memset and memcpy (HN )Deconstructing the Garbage-First Collector (2020) llmalloc - Low-latency malloc implementation.Does the Bronze Garbage Collector Make Rust Easier to Use? A Controlled Experiment (2021) (Lobsters )Hardened malloc - Hardened allocator designed for modern systems.An Empirical Lower Bound on the Overheads of Production Garbage Collectors (2021) (Tweet )Fuite - CLI tool for finding memory leaks in web apps. (Article ) (HN )malloc-rs - Implementation of malloc, realloc, calloc, and free in Rust.zig-gc - Simple mark-and-sweep garbage collector written in Zig.Declarative memory management (2019) (HN )Signals and Threads | Memory Management (2022) (Lobsters )HardsHeap - Universal and Extensible Framework for Evaluating Secure Allocators.CertiGC - Formally verified generational garbage collector.How Much Memory Is My Program Really Using? (2022) TinyGC (Tiny Garbage Collector) - Implementation of the subset of API of the well-known Boehm-Demers-Weiser Conservative GC.The Tower of Weakenings: Memory Models For Everyone (2022) (Reddit )Understanding Memory Allocation Size Limitations with Level Zero (2022) Implementing a safe garbage collector in Rust (2022) (Reddit ) (HN )GC workbench - Workspace for experimenting with garbage collectors.Chris Lattner on garbage collection vs. Automatic Reference Counting (2017) (HN )Low-Latency, High-Throughput Garbage Collection (2022) Distilling the Real Cost of Production Garbage Collectors (2022) (HN )Forgetting about the problem of memory (2022) (Lobsters )Memory safety for SerenityOS (2022) Benchmarking Malloc with Doom 3 (2022) Elise - Concurrent garbage collection crate based on shifgrethor.shifgrethor - Define an API for precise, tracing garbage collection in Rust which upholds all of Rust's safety guarantees.Treadmill garbage collector by H. Baker (2022) (HN )Valgrind - Instrumentation framework for building dynamic analysis tools. Automatically detect many memory management and threading bugs, and profile your programs in detail. (Twenty years of Valgrind ) (HN ) (Lobsters )Vale's Hybrid-Generational Memory (2021) Reference count, don't garbage collect (2022) (HN )Automatic memory management with short pauses that is simple to implement? (2022) Perceus: Garbage Free Reference Counting with Reuse