2 个仓库
Optimizing memory request and release paths to prevent bottlenecks in multi-threaded, high-scale applications.
Distinct from Thread Scaling: Focuses specifically on memory allocator scalability, not general process or build scaling.
Explore 2 awesome GitHub repositories matching operating systems & systems programming · High-Concurrency Memory Scaling. Refine with filters or upvote what's useful.
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
Optimizes how threads request and release memory to prevent performance bottlenecks in large-scale, high-concurrency software.
Tcmalloc 是一个高性能 C++ 内存分配器和运行时库,专为管理大规模服务的堆内存而设计。它作为一个线程缓存内存分配器,减少了多线程应用中的锁竞争,从而在并发工作负载下保持稳定性和性能。 该项目专注于高并发内存分配和多线程应用扩展。它采用提供线程本地缓存的策略,以确保快速的内存访问,并提高并行程序在底层系统编程环境中的吞吐量。 该库通过页级分配、大小类分箱(size-classed binning)和基于跨度(span-based)的元数据来管理内存,以最大限度地减少碎片。它利用中央空闲列表和无锁快速路径来处理跨多个执行线程的内存请求。
Optimizes memory paths to prevent bottlenecks and reduce lock contention in multi-threaded, high-scale applications.