awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Memory management systems

Ranking updated Jul 15, 2026

For memory management subsystems, the first results are microsoft/mimalloc (Mimalloc is a high-performance, general-purpose dynamic memory allocator that serves as a core component for managing system heap memory, though it focuses on allocation and security rather than providing garbage collection or NUMA-specific scheduling), bdwgc/bdwgc (This is a comprehensive garbage-collected memory allocator for C and C++ that provides dynamic allocation, automatic reclamation, and low-latency features like incremental and parallel collection, making it a direct fit for a memory management subsystem) and orangeduck/cello (Cello provides a high-level runtime environment for C that includes an integrated garbage collection system and automated memory lifecycle management, fitting the requirements for a memory management subsystem within a C-based runtime). jemalloc/jemalloc and facebook/folly round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

Explore the best open-source memory management systems. Compare top-rated libraries by performance and activity to find the best fit for your project.

Memory management systems

Find the best repos with AI.We'll search the best matching repositories with AI.
  • microsoft/mimallocmicrosoft avatar

    microsoft/mimalloc

    13,090View on GitHub↗

    Mimalloc is a general purpose dynamic memory allocator for C and C++ designed to increase execution speed and reduce fragmentation. It functions as a scalable heap manager that replaces standard library allocation functions to improve performance and memory efficiency across applications. The project distinguishes itself as both a heap security hardener and a memory corruption detector. It employs randomized allocation, encrypted free lists, and sampled guard pages to mitigate heap exploits and identify buffer overflows or use-after-free errors during runtime. The allocator provides capabili

    Mimalloc is a high-performance, general-purpose dynamic memory allocator that serves as a core component for managing system heap memory, though it focuses on allocation and security rather than providing garbage collection or NUMA-specific scheduling.

    CDynamic Memory AllocationLow Latency AllocationHigh Performance Allocators
    View on GitHub↗13,090
  • bdwgc/bdwgcbdwgc avatar

    bdwgc/bdwgc

    3,418View on GitHub↗

    This project is a garbage collection library and memory allocator for C and C++ that provides automatic reclamation of unreachable objects. It functions as a memory management system that can replace standard allocation functions to automate memory reclamation without requiring source modification. The system is distinguished by its ability to perform incremental and generational garbage collection to reduce application pauses, as well as parallel collection to distribute tracing across multiple CPU cores. It includes a specialized string manipulation library that uses shared structures to en

    This is a comprehensive garbage-collected memory allocator for C and C++ that provides dynamic allocation, automatic reclamation, and low-latency features like incremental and parallel collection, making it a direct fit for a memory management subsystem.

    CGarbage CollectionMemory Allocation Libraries
    View on GitHub↗3,418
  • orangeduck/celloorangeduck avatar

    orangeduck/Cello

    7,124View on GitHub↗

    Cello is a programming language extension for C that provides a higher-level implementation of the language. It integrates an object-oriented framework, an automated garbage collection system, and a runtime reflection library to enable dynamic type inspection. The project implements a structured system for object orientation within C, including support for classes, type classes, and polymorphism. It includes a runtime exception handling system to intercept execution errors and initiate recovery procedures. The framework further provides generic programming capabilities for creating reusable

    Cello provides a high-level runtime environment for C that includes an integrated garbage collection system and automated memory lifecycle management, fitting the requirements for a memory management subsystem within a C-based runtime.

    CGarbage CollectionGarbage Collectors
    View on GitHub↗7,124
  • jemalloc/jemallocjemalloc avatar

    jemalloc/jemalloc

    10,950View on GitHub↗

    jemalloc is a general purpose C memory allocator designed as a replacement for the standard library malloc and free functions. It is a multi-threaded allocation library that emphasizes fragmentation avoidance and scalable concurrency for high-performance applications. The project reduces lock contention by using multiple independent memory arenas and thread-local cache layers. It minimizes latency by offloading the reclamation of unused memory pages to asynchronous background threads and utilizes huge page metadata storage to reduce translation lookaside buffer misses. The system includes a

    This is a high-performance general-purpose memory allocator that provides the core dynamic allocation and low-latency features required for managing system memory, though it does not include a garbage collector.

    CLow Latency AllocationArena-Based Memory ManagementHigh Performance Allocators
    View on GitHub↗10,950
  • facebook/follyfacebook avatar

    facebook/folly

    30,412View on GitHub↗

    Folly is a collection of high-performance C++ components designed as an extension to the C++ Standard Library for large-scale production environments. It provides specialized toolkits for memory management, concurrency, asynchronous workflows, and low-latency input and output operations. The project distinguishes itself through the provision of lock-free containers and bounded queues to minimize contention in multi-threaded applications, alongside a framework for managing deferred computations using futures and promises. It further offers specialized memory arenas and optimized implementation

    Folly provides specialized memory arenas and high-performance allocation primitives designed for low-latency, large-scale C++ environments, making it a relevant library for building memory management subsystems.

    C++Arena-Based Memory Management
    View on GitHub↗30,412
  • torvalds/linuxtorvalds avatar

    torvalds/linux

    237,355View on GitHub↗

    The Linux kernel is a monolithic operating system core that manages hardware resources, memory, and process scheduling across diverse computing architectures. It provides a standardized, POSIX-compliant environment for application execution while maintaining a modular driver framework that allows for the dynamic loading and removal of hardware interfaces. The project is distinguished by its high-performance concurrency toolkit, which utilizes lockless synchronization primitives and read-copy-update mechanisms to manage shared data access in multi-core environments. It incorporates a comprehen

    The Linux kernel is the foundational system software that implements low-level memory management, including dynamic allocation, NUMA-aware page management, and hardware-level memory tracking, which directly addresses your requirement for a system-level memory management subsystem.

    CMonolithic KernelsOperating System KernelsHardware Drivers
    View on GitHub↗237,355
  • ccareaga/heap_allocatorCCareaga avatar

    CCareaga/heap_allocator

    915View on GitHub↗

    This project is a C-based heap management library designed for systems programming environments that require manual control over memory lifecycles. It provides the fundamental utilities necessary to initialize a designated region of memory and perform dynamic allocation and deallocation of memory blocks. The library utilizes a linked-list-based tracking system to manage memory segments, employing a first-fit strategy to locate available space within the heap. To maintain memory organization and minimize fragmentation, it implements boundary-tag coalescing, which automatically merges adjacent

    This is a minimal heap memory allocator written in C that provides the core functionality for dynamic memory allocation in low-level systems, though it lacks advanced features like garbage collection or NUMA awareness.

    CManaged Memory AllocatorsHeap Chunk IdentificationManual Deallocation Routines
    View on GitHub↗915
  • foonathan/memoryfoonathan avatar

    foonathan/memory

    1,610View on GitHub↗

    STL compatible C++ memory allocator library using a new RawAllocator concept that is similar to an Allocator but easier to use and write.

    This library provides a suite of C++ memory allocators and management abstractions that directly address the need for low-level allocation and tracking, fitting the category of a memory management component.

    C++Memory AllocationMemory Management
    View on GitHub↗1,610
  • mtrebi/memory-allocatorsmtrebi avatar

    mtrebi/memory-allocators

    1,977View on GitHub↗

    Custom memory allocators in C++ to improve the performance of dynamic memory allocation

    This repository provides a collection of custom C++ memory allocators designed for high-performance dynamic memory management, directly addressing the core requirement for low-level allocation components.

    C++Memory AllocationMemory Management
    View on GitHub↗1,977
  • google/sanitizersgoogle avatar

    google/sanitizers

    12,402View on GitHub↗

    This project is a suite of runtime diagnostic tools designed to detect memory leaks, concurrency races, and language-specification violations during software execution. It provides a collection of dynamic analysis tools that identify addressability issues, uninitialized memory usage, and memory safety bugs in applications. The toolset includes a thread safety analyzer to identify data races and deadlocks in concurrent code, as well as an undefined behavior sanitizer to detect operations that violate language specifications. The system covers broad capabilities in memory safety monitoring and

    This project provides diagnostic and instrumentation tools for detecting memory errors rather than serving as a memory management subsystem for allocating or tracking system memory.

    CMemory SafetyMemory Safety Diagnostics
    View on GitHub↗12,402
  • chakra-core/chakracorechakra-core avatar

    chakra-core/ChakraCore

    9,242View on GitHub↗

    ChakraCore is an embeddable JavaScript engine and high-performance scripting runtime. It provides a just-in-time compiler that converts JavaScript source code into optimized machine code during runtime to increase execution speed and throughput. The engine utilizes a multi-tiered compilation pipeline and tiered machine code generation to balance startup time with execution speed. Memory is managed via a concurrent garbage collector that reclaims unreachable objects on background threads to minimize application pauses. The project provides capabilities for embedded JavaScript execution and au

    This is a full JavaScript engine and runtime rather than a low-level memory management library, though it includes a built-in garbage collector as part of its internal execution environment.

    JavaScriptGarbage CollectionGarbage Collectors
    View on GitHub↗9,242
  • dotnet/coreclrdotnet avatar

    dotnet/coreclr

    12,764View on GitHub↗

    CoreCLR is a runtime environment that manages the execution, memory, and basic types for applications built on the .NET platform. It serves as a managed execution environment that handles low-level system interactions and provides primitive data types for high-level application code. The project functions as a JIT compilation engine and a garbage collected runtime. It translates intermediate language into machine code at runtime for execution on specific hardware and automatically reclaims unused memory to prevent leaks. The system covers broad capability areas including managed code executi

    This is a full-featured managed runtime environment rather than a low-level memory management library or component, meaning it provides memory management as an internal service for its own execution model rather than as a standalone tool for system-level memory allocation.

    Garbage Collection
    View on GitHub↗12,764
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
microsoft/mimalloc13.1KCMITMay 8, 2026
bdwgc/bdwgc3.4KCotherFeb 19, 2026
orangeduck/cello
7.1K
C
NOASSERTION
Dec 1, 2024
jemalloc/jemalloc11KCNOASSERTIONJun 17, 2026
facebook/folly30.4KC++Apache-2.0Jun 16, 2026
torvalds/linux237.4KCNOASSERTIONJun 23, 2026
ccareaga/heap_allocator915CMITDec 14, 2020
foonathan/memory1.6KC++ZlibMay 29, 2025
mtrebi/memory-allocators2KC++MITApr 12, 2026
google/sanitizers12.4KCNOASSERTIONMay 19, 2026

Related searches

  • Memory profilers
  • a memory persistence layer for AI agents
  • Memory pool
  • System utilities
  • a memory profiler for debugging application leaks
  • an MCP server for codebase context access
  • a centralized platform for log management
  • Dynamic loading systems