awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jemalloc avatar

jemalloc/jemalloc

0
View on GitHub↗
10,950 estrellas·1,627 forks·C·5 vistasjemalloc.net↗

Jemalloc

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 heap profiling tool for analyzing allocation patterns and identifying memory leaks. It also provides custom memory management hooks that allow developers to override how the allocator requests and releases memory from the operating system.

Features

  • Custom Memory Allocators - Provides a high-performance custom memory allocator designed to replace the standard C library malloc and free functions.
  • Asignadores de memoria - Implements a general-purpose memory allocation library emphasizing fragmentation avoidance and scalable concurrency.
  • High-Concurrency Memory Scaling - Optimizes how threads request and release memory to prevent performance bottlenecks in large-scale, high-concurrency software.
  • High Performance Allocators - Provides a high-performance allocation implementation optimized for execution speed and reduced lock contention via multiple arenas.
  • Arena-Based Memory Management - Implements an arena-based memory management strategy that binds threads to specific pools to reduce lock contention.
  • Arena Allocators - Assigns threads to independent memory pools to reduce lock contention and improve data locality.
  • Slab Allocators - Utilizes slab allocators to group objects of the same size, minimizing internal fragmentation and speeding up lookups.
  • C Heap Allocators - Serves as a high-performance replacement for the standard C library malloc and free functions.
  • Extent-Based Management - Uses extensible trees to track contiguous blocks of memory pages for efficient reclamation and fragmentation control.
  • Multi-threaded Memory Management - Reduces lock contention and fragmentation when allocating memory across many CPU cores in high-performance environments.
  • Thread Local Storage - Implements per-thread buffers to store frequently used memory chunks, eliminating the need for global locks.
  • Metadata Address Mapping - Employs a multi-level radix tree structure to quickly map memory addresses to allocation metadata.
  • Huge Page Optimizations - Utilizes transparent huge pages for internal metadata storage to minimize translation lookaside buffer misses.
  • Low Latency Allocation - Optimizes allocation paths and offloads memory purging to background threads to ensure minimal latency.
  • Heap Allocation Strategies - Ships a heap profiling tool that monitors allocation patterns and analyzes usage to detect leaks.
  • Unused Memory Recovery - Offloads the recovery and return of unused memory pages to the operating system using asynchronous background threads.
  • Custom Memory Hooks - Provides custom hooks to override default operating system memory request and release methods.
  • Deferred Page Purging - Implements asynchronous background threads to return unused physical memory pages to the operating system and reduce latency.
  • Memory Purging Tuning - Provides configuration options to tune the decay time and methods for purging unused memory back to the operating system.
  • Memory Profilers - Includes a built-in tool for analyzing heap allocation patterns and identifying memory leaks.
  • Memory Management - General-purpose allocator with concurrency support.
  • Memory Allocation - General purpose malloc with fragmentation avoidance and concurrency support.
  • Memory Management Libraries - Memory allocator emphasizing fragmentation avoidance.

Historial de estrellas

Gráfico del historial de estrellas de jemalloc/jemallocGráfico del historial de estrellas de jemalloc/jemalloc

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Preguntas frecuentes

¿Qué hace jemalloc/jemalloc?

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.

¿Cuáles son las características principales de jemalloc/jemalloc?

Las características principales de jemalloc/jemalloc son: Custom Memory Allocators, Asignadores de memoria, High-Concurrency Memory Scaling, High Performance Allocators, Arena-Based Memory Management, Arena Allocators, Slab Allocators, C Heap Allocators.

¿Qué alternativas de código abierto existen para jemalloc/jemalloc?

Las alternativas de código abierto para jemalloc/jemalloc incluyen: microsoft/mimalloc — Mimalloc is a general purpose dynamic memory allocator for C and C++ designed to increase execution speed and reduce… google/tcmalloc — Tcmalloc is a high-performance C++ memory allocator and runtime library designed to manage heap memory for large-scale… facebook/folly — Folly is a collection of high-performance C++ components designed as an extension to the C++ Standard Library for… emeryberger/hoard — The Hoard Memory Allocator: A Fast, Scalable, and Memory-efficient Malloc for Linux, Windows, and Mac. c3lang/c3c — c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static… facebookincubator/velox — Velox is a high-performance C++ query execution engine and columnar data processing library. It serves as a composable…

Alternativas open-source a Jemalloc

Proyectos open-source similares, clasificados según cuántas características comparten con Jemalloc.
  • microsoft/mimallocAvatar de microsoft

    microsoft/mimalloc

    13,090Ver en 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

    C
    Ver en GitHub↗13,090
  • google/tcmallocAvatar de google

    google/tcmalloc

    5,255Ver en GitHub↗

    Tcmalloc is a high-performance C++ memory allocator and runtime library designed to manage heap memory for large-scale services. It functions as a thread-caching memory allocator that reduces lock contention in multi-threaded applications to maintain stability and performance during concurrent workloads. The project focuses on high-concurrency memory allocation and multithreaded application scaling. It employs a strategy of providing per-thread caches to ensure fast memory access and improve the throughput of parallel programs in low-level system programming environments. The library manages

    C++
    Ver en GitHub↗5,255
  • facebook/follyAvatar de facebook

    facebook/folly

    30,412Ver en 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

    C++
    Ver en GitHub↗30,412
  • emeryberger/hoardAvatar de emeryberger

    emeryberger/Hoard

    1,233Ver en GitHub↗

    The Hoard Memory Allocator: A Fast, Scalable, and Memory-efficient Malloc for Linux, Windows, and Mac.

    C++
    Ver en GitHub↗1,233
  • Ver las 30 alternativas a Jemalloc→