3 مستودعات
Low-level memory management strategies specifically designed to scale across many CPU cores with minimal lock contention.
Distinct from Thread-Aware Memory Analyzers: Focuses on the allocator's internal concurrency strategy rather than external analyzers or locking mechanisms.
Explore 3 awesome GitHub repositories matching operating systems & systems programming · Multi-threaded Memory Management. 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
Reduces lock contention and fragmentation when allocating memory across many CPU cores in high-performance environments.
xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an instructional kernel for x86 and RISC-V architectures, featuring a virtual memory manager and support for symmetric multiprocessing. The system is designed to demonstrate core OS principles through a simplified re-implementation of Unix Version 6. It provides a controlled environment for studying system calls, trap handling, and process lifecycles. Its capability surface covers process management, including scheduling and context switching, and memory management via page tables for
Uses spinlocks to coordinate memory access across multiple processors to ensure data consistency.
OpenBLAS is a high-performance implementation of the Basic Linear Algebra Subprograms standard designed for numerical computing and matrix operations. It serves as a hardware-accelerated numerical library and optimized math kernel library, providing a computational engine for large-scale matrix multiplication and vector operations. The library distinguishes itself through the use of hand-tuned assembly kernels and SIMD instruction mapping, such as AVX and SVE, to maximize floating-point performance on specific CPU architectures. It features a multi-threaded framework that manages parallel exe
Manages internal memory buffers and threading backends to scale linear algebra operations across CPU cores.