30 open-source projects similar to rampantpixels/rpmalloc, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Rpmalloc alternative.
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
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
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
Smart pointers for the (GNU) C programming language
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Verona is a research programming language designed to prevent data races through a system of concurrent ownership and deep immutability. It utilizes a deeply immutable memory model to ensure that complex objects cannot be mutated, allowing data to be shared across concurrent threads without synchronization locks. The project features a deterministic parallel execution engine that ensures reproducible outputs regardless of thread timing. It employs a region-based memory manager to assign memory regions to specific threads or processes, reducing contention in producer-consumer workloads. The s
Luau is a high-performance programming language evolved from Lua 5.1. It consists of a bytecode virtual machine, an embeddable scripting engine, and a static code analyzer designed to provide a secure, sandboxed execution environment for host applications. The project is distinguished by its gradual typing system, which combines automatic type inference with optional manual annotations to detect bugs without requiring full static typing. It also features native vector mathematics for high-performance operations and a specialized debugging system that uses bytecode patching to minimize executi
Easy to use - simple API, works out of the box - Advanced filtering and log levels per topic or output - Thread-safety via external locking injection - Customization - only data you need - Extensible - add your own features via public API, set of predefined extensions - Support for embedded…
C List - universal list solution for C and C++, easy and fast, all data types supported
EasyLogger is a lightweight C/C++ logging library and asynchronous framework designed for embedded systems, IoT devices, and wearables. It functions as a resource-efficient logger and flash memory manager, providing tools for low-level debugging and system event recording with minimal ROM and RAM requirements. The project distinguishes itself through an asynchronous logging model that buffers messages to a separate thread, preventing logging operations from blocking real-time application execution. It includes a specialized flash memory manager that utilizes circular buffering to persist logs
sds is a C dynamic string library that provides a memory management wrapper for heap-allocated strings. It implements binary-safe storage by tracking string lengths explicitly, allowing the library to handle null characters within data. The library distinguishes itself through a memory architecture that uses interchangeable function pointers for allocation and freeing, enabling the integration of custom memory managers. It utilizes header-stored length tracking to provide constant-time length retrieval and maintains null-terminated buffer padding to ensure compatibility with standard C string
Linenoise is a lightweight C library for terminal line editing, command history management, and asynchronous input processing. It functions as a self-contained alternative for capturing user input from the command line without requiring external dependencies. The utility provides a non-blocking input processor that handles keyboard data via a feed mechanism, allowing applications to process user typing and external events simultaneously. It supports the implementation of custom shells and REPLs through features such as callback-based autocompletion, input hinting, and a circular history buffe
data compression library for embedded/real-time systems
Aubio is an audio analysis and digital signal processing library designed for music information retrieval. It provides a suite of tools for extracting musical features, estimating fundamental frequencies, and tracking rhythmic pulses in audio streams. The library specializes in the detection of pitch and beat, enabling the extraction of musical notes and the estimation of overall tempo. It also includes capabilities for automatic onset detection to identify the start of sonic events and the separation of audio signals into percussive transients and steady-state tonal components. The system c
s2n is a C-based security library and TLS protocol implementation that serves as a secure network transport layer. It provides a modular cryptographic backend interface to encrypt data streams, manage handshakes, and handle mutual authentication between peers. The project focuses on post-quantum cryptography, integrating quantum-resistant key exchange and digital signatures to protect connections against future computing threats. It distinguishes itself through security hardening measures, such as memory-locked secret storage to prevent keys from being swapped to disk and timing-attack mitiga
Transform ML models into a native code (Java, C, Python, Go, JavaScript, Visual Basic, C#, R, PowerShell, PHP, Dart, Haskell, Ruby, F#, Rust) with zero dependencies
Simple .INI file parser in C, good for embedded systems
Library that solves the exact cover problem using Dancing Links, also known as DLX.
Epoxy is a library for handling OpenGL function pointer management for you