-
bumpalo
A fast bump allocation arena for Rust
-
arc-swap
Atomically swappable Arc
-
memmap2
Cross-platform Rust API for memory-mapped file IO
-
jemallocator
allocator backed by jemalloc
-
tikv-jemallocator
allocator backed by jemalloc
-
sharded-slab
A lock-free concurrent slab
-
arcstr
A better reference-counted string type, with zero-cost (allocation-free) support for string literals, and reference counted substrings
-
heapless
static
friendly data structures that don’t require dynamic memory allocation -
mimalloc
Performance and security oriented drop-in allocator
-
yoke
Abstraction allowing borrowed data to be carried along with the backing data it borrows from
-
slab
Pre-allocated storage for a uniform data type
-
typed-arena
The arena, a fast but limited type of allocator
-
allocator-api2
Mirror of Rust's allocator API
-
uninit
A collection of tools for a safer usage of uninitialized memory
-
region
Cross-platform virtual memory API
-
talc
A fast and flexible allocator for no_std and WebAssembly
-
la-arena
index-based arena without deletion
-
snmalloc-rs
rust bindings of snmalloc
-
alloc-no-stdlib
dynamic allocator that may be used with or without the stdlib. This allows a package with nostd to allocate memory dynamically and be used either with a custom allocator, items on the stack…
-
aligned
A newtype with alignment of at least
A
bytes -
linked_list_allocator
allocator usable for no_std systems. It builds a linked list from the freed blocks and thus needs no additional data structures.
-
static_cell
Statically allocated, initialized at runtime cell
-
object-pool
A thread-safe object pool with automatic return and attach/detach semantics
-
stable_deref_trait
An unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with libraries such as owning_ref and rental
-
gbm
libgbm bindings for rust
-
mem_dbg
Traits and associated procedural macros to display recursively the layout and memory usage of a value
-
rctree
A 'DOM-like' tree implemented using reference counting
-
hipstr
string for Rust: zero-cost borrow and slicing, inline representation for small strings, (atomic) reference counting
-
stats_alloc
An allocator wrapper that allows for instrumenting global allocators
-
memflow
core components of the memflow physical memory introspection framework
-
static-alloc
A bump allocator on static memory for the alloc-traits crate
-
rustc-std-workspace-alloc
integration of crates.io crates into rust-lang/rust standard library workspace
-
ghost-cell
Compile-time zero-cost borrow-checking of aliased references
-
tiny-fn
Type erased closures on stack
-
gc-arena
safe, incrementally garbage collected arenas
-
vm-memory
Safe abstractions for accessing the VM physical memory
-
tracy_full
Fully featured bindings for the Tracy profiler
-
jemalloc_pprof
Convert jemalloc heap profiles to pprof to understand memory usage, fix memory leaks, and fix OOM Kills
-
dlmalloc
port of the dlmalloc allocator
-
bufsize
bytes::BufMut implementation to count buffer size
-
bump-scope
A fast bump allocator that supports allocation scopes / checkpoints. Aka an arena for values of arbitrary types.
-
tendril
Compact buffer/string type for zero-copy parsing
-
dyn-stack
Dynamic stack wrapper for unsized allocations
-
tikv-jemalloc-sys
Rust FFI bindings to jemalloc
-
lol_alloc
laughably simple wasm global_allocator
-
census
Keeps an inventory of living objects
-
reblessive
A small runtime for running deeply nested recursive functions
-
gpu-alloc
agnostic memory allocator for Vulkan like APIs
-
peak_alloc
An allocator to keep track of (the max) allocated memory
-
memuse
Traits for measuring dynamic memory usage of types
-
range-alloc
Generic range allocator
-
micromap
The fastest alternative to HashMap, for maps smaller than 20 keys
-
kamo
assist in the creation of an interpreter or compiler and its associated runtime
-
jrsonnet-gcmodule
Cyclic garbage collection inspired by CPython's gc implementation
-
jemalloc-sys
Rust FFI bindings to jemalloc
-
buddy_system_allocator
A bare metal allocator that uses buddy system
-
lgalloc
Large object allocator
-
slotmapd
orlp/slotmap fork where serialization cycle doesn't change observable behavior
-
boa_gc
Garbage collector for the Boa JavaScript engine
-
mini-alloc
Very simple global allocator
-
hyperlight-guest
build guest applications for hyperlight
-
jemalloc-ctl
A safe wrapper over jemalloc's control and introspection APIs
-
memsec
libsodium/utils
-
rarena-allocator
Lock-free ARENA allocator which can be used in both memory and on-disk
-
buddy-alloc
memory allocator for no-std Rust, used for embedded environments
-
qcell
Statically-checked alternatives to RefCell and RwLock
-
istring
A replacement for String that allows storing short strings of length up to sizeof<String>() - 1 without a heap allocation
-
dumpster
A concurrent cycle-tracking garbage collector
-
stackalloc
Safely allocate and manipulate arbitrarily-sized slices on the stack at runtime
-
arcshift
Replacement for std::sync::Arc<T> that supports updating the value, with some caveats
-
process_vm_io
I/O access to virtual memory contents of processes
-
inplace_it
Place small arrays on the stack with a low-cost!
-
poggers
memory lib
-
cluFullTransmute
A more complete and extended version of data transformation with and without constraint checking
-
offset-allocator
A port of Sebastian Aaltonen’s
OffsetAllocator
to Rust -
wrapped_mono
wrapped_mono
is a safe, lightweight wrapper around the mono library. It allows embedding of the mono runtime inside a rust project. Inside this embedded runtime code written in languages supporting the… -
mmap-rs
A cross-platform and safe Rust API to create and manage memory mappings in the virtual address space of the calling process
-
memur
Arena storage with bells and whistles
-
mmtk
framework for the design and implementation of high-performance and portable memory managers
-
checkers
A sanity checker for global allocations
-
rustix-dlmalloc
port of the dlmalloc allocator, ported to rustix
-
wdk-alloc
alloc support for binaries compiled with the Windows Development Kit (WDK)
-
stats_alloc_helper
A test helper to measure memory allocations
-
refuse
incremental, multi-threaded garbage collector
-
include_bytes_aligned
macro that embeds the bytes of an external file into the executable and guarantees that they are aligned
-
rabuf
randome access buffer for io
-
haphazard
Dynamic memory management for lock-free data structures using hazard pointers
-
id-arena
id-based arena
-
triple_arena
Regular, Chain, Surjection, and Ordered Arenas supporting non-Clone types, deletion, and more
-
typed-generational-arena
A safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices. Now with typed indices and custom integer types for generations!
-
vptr
Thin references to trait objects by embedding the virtual table pointer in the struct
-
emballoc
but reliable memory allocator for embedded Rust and #![no_std]
-
thunderdome
Fast arena allocator with compact generational indices
-
shellexec
Cross-platform shellcode executor in rwx memory
-
rust-cc
A cycle collector for Rust programs
-
tor-memquota
Memory use tracking and quota utilities, used by Tor software
-
timely_communication
Communication layer for timely dataflow
-
dyn_size_of
report approximate amount of memory consumed by variables, including the memory allocated on heap
-
disqualified
type names more user-readable
-
lightweight-mmap
memory mapping helpers for Rust, with minimal amount of code generated
-
relib_module
relib is a framework for reloadable dynamic libraries
-
box_raw_ptr
providing safe wrappers for working with raw pointer. These raw pointers are
*const T
and*mut T
. These wrappers ensure memory safety by encapsulating the raw pointers in safe abstractions… -
secmem-alloc
Custom allocators for secret memory
-
process-image
Zero-cost abstraction for convenient access to process image tags
-
ra_ap_la-arena
index-based arena without deletion
-
libbz2-rs-sys-cdylib
a drop-in compatible libbz2 cdylib
-
flexstr
A flexible, simple to use, immutable, clone-efficient
String
replacement for Rust -
lifeguard
An object pool manager in Rust
-
gc
Tracing garbage collector plugin for Rust
-
ringal
Efficient ring allocator for short-lived buffers
-
intrusive_splay_tree
An intrusive splay tree implementation that is no-std compatible and free from allocation and moves
-
wayrs-utils
A collection of utils and abstractions for wayrs-client
-
presser
help you copy things into raw buffers without invoking spooky action at a distance (undefined behavior)
-
heap-array
variable length array, with its main benefit over
Vec
is taking up less space -
slabmalloc
slab based malloc implementation in rust. Can be used stand-alone or in order to provide the necessary interface to rusts liballoc library. slabmalloc only relies on libcore.
-
recycle_vec
method for Vec to recycle it's backing allocation for use with another Vec of different type
-
atomic-pool
Statically allocated pool providing a std-like Box
-
mapped-file
Construct a memory mapping over any file object
-
free-list
A free-list-based page/frame allocator
-
pi_world
ecs world
-
second-stack
A fast allocator for short-lived slices and large values
-
compact_arena
some types to allow indexed arenas with small memory footprint
-
intuicio-framework-arena
Arena allocator framework module for Intuicio scripting platform
-
good_memory_allocator
A blazingly fast and memory efficient memory allocator to be used in
no_std
environments -
generational-box
A box backed by a generational runtime
-
boxarray
Safe way to allocate and initialize nested arrays directly on the heap in Rust
-
shared-buffer
An abstraction over buffers backed by memory-mapped files or bytes in memory
-
product-os-http-body
Product OS : Http Body is a derivative of the http-body and http-body-util crates restructured for both std and no_std environments
-
typed-slab
Typed wrapper for Slab
-
rpmalloc
Cross-platform global memory allocator using rpmalloc
-
mem-rs
pattern scanning and abstraction for pointers in memory of running processes
-
datasize
A simplified heap memory size estimator
-
malloc_size_of
A an allocator-agnostic crate for measuring the heap size of a value
-
allocation-counter
Count the number of memory allocation of some code
-
token-cell
A more convenient GhostCell
-
pin-weak
Small wrapper around an equivalent of Pin<Weak<T>>
-
alloc-from-pool
Single-threaded object pool implementation
-
moveref
Types and traits for safe C++ style placement initialization and move semantics
-
slabbin
An efficient slab allocator with stable addresses
-
zeroizing-alloc
Minimal allocator wrapper to zero-on-free data for security
-
cache-size
finding your L1/L2/L3 cache sizes
-
alloc-track
Track memory allocations by backtrace or originating thread
-
malloc-info
A safe wrapper around glibc's malloc_info
-
sensitive
Memory allocator for sensitive information
-
slimmer_box
A packed alternative to Box<T> whose 'fat' pointer is 'slimmer'
-
hardened_malloc-rs
hardened_malloc rust wrapper
-
cap
An allocator that can track and limit memory usage. This crate provides a generic allocator that wraps another allocator, tracking memory usage and enabling limits to be set
-
stele
An atomic Vec-like structure with no copying on allocation
-
portable-dlmalloc
Portable Fork of Doug Lea's malloc Implementation
-
dns-protocol
A DNS protocol implementation in Rust
-
bitmap-allocator
Bit allocator based on segment tree algorithm
-
aligned-buffer
A buffer with controllable alignment, that can be sealed and shared by reference count
-
zone-alloc
Containers for zone-based data allocation
-
sandpit
A concurrent garbage collected arena
-
flat_string
FlatString is fixed allocated size String that that can be created direcly on the stack
-
memory_set
Data structures and operations for managing memory mappings
-
corundum
Persistent Programming Library
-
kernel-alloc
Minimalistic Windows Kernel Allocator
-
malloced
A malloc-ed box pointer type
-
libmwemu
x86 32/64bits and system internals emulator, for securely emulating malware and other stuff
-
orderly-allocator
A super-simple fast soft-realtime allocator for managing an external pool of memory
-
shared_vector
Reference counted vector data structure
-
tlsf
Two-Level Segregated Fit (TLSF) allocator with optimized memory footprint
-
ocaml-boxroot-sys
Boxroot for OCaml: fast movable GC roots (C API)
-
vm-allocator
Helpers for allocating resources needed during the lifetime of a VM
-
rseal
Memory sealing operations
-
memflow-qemu
qemu connector for the memflow physical memory introspection framework
-
stupidalloc
A stupid memory allocator that memory-maps allocations to files
-
safe-gc
A garbage collection library with zero
unsafe
code and zero dependencies -
alloc-madvise
A memory allocator for creating large aligned chunks of memory
-
shush-rs
designed to manage sensitive data securely by leveraging memory protection mechanisms
-
byte-pool
Pool of byte slices, for efficient memory usage
-
stylish-style
Internal implementation details of
stylish-core
-
mimalloc-rspack
Performance and security oriented drop-in allocator
-
metriki-jemalloc
Metriki integration for jemalloc
-
kona-common
Common traits and system interfaces for developing client programs on top of Fault Proof VMs
-
rsbmalloc
but fast binned allocator for Rust. Single-threaded for no_std, multi-threaded otherwise
-
mmap-wrapper
wrapper for the memmap2 crate to cast mmap backed pointers to structs
-
opendal_compat
Apache OpenDAL Compat
-
buffet
Thread-local buffer pool for the
loona
crate -
pi_key_alloter
lock free Key(idx:u32, version:u32) alloter
-
deepsize
measuring the total size of object on the stack and heap
-
shared-buffer-rs
combines Arc and RefCell for Send and Sync
-
mockalloc
allow testing code which uses the global allocator
-
blink-alloc
Fast, concurrent, arena-based allocator with drop support
-
fixed-typed-arena
A typed arena that uses fixed-size chunks to ensure non-amortized O(1) allocations
-
pin-cell
A pin-safe cell
-
reloaded-memory-buffers
Shared, Concurrent, Permanent Memory Allocator tied to Process Lifetime
-
mmap-fixed
dealing with memory-mapped I/O This is a fork of a fork of the original rust-mmap with updated dependencies and a fix for the Windows version. This exists only because there are no other…
-
baby-mimalloc
Mimalloc implemented in Rust (not a binding to the C library) with only basic features
-
drop_arena
A single-type allocator which permits dropping and reclaiming of individual elements
-
hash_cons
A type-safe hash-cons library
-
deallocate-zeroed
An extension trait for allocators to deallocate already-zeroed memory
-
jit-allocator
An executable code allocator
-
arena64
A concurrent arena providing mutually exclusive access over indexes
-
composable-allocators
Composable memory allocators for new allocator API
-
gpu-alloc-vulkanalia
vulkanalia
backend forgpu-alloc
-
hel-random
RNG with weak entropy source (alloc) and xoshiro256++ hashing
-
ndata
Thread-safe, self-owned JSON-like data with manual garbage collection
-
resourcetrack
Basic tools for counting objects
-
trc
A faster Arc
-
use-with
resource management utilities inspired by Kotlin's 'use' function and C#'s 'using' block, ensuring proper utilization and disposal of resources in Rust
-
isoalloc
Security oriented allocator
-
stak-primitive
Stak Scheme primitives
-
skiplist-rust
A lockless skiplist implementation in Rust
-
pages-and-pages
Allows control over a manually allocated region of page-aligned memory with support for granular protection and locking of underlying pages
-
bdwgc-alloc
impl GlobalAlloc for bdwgc
-
safe-allocator-api
A safe wrapper around the
allocator_api
’s Allocator trait -
contiguous-mem
A contiguous memory storage
-
ralloc
An efficient alternative platform-agnostic allocator
-
relib_internal_shared
relib is a framework for reloadable dynamic libraries
-
proc-mem-rs
proc_mem forc
-
ration
A shared memory library
-
sgx_alloc
Rust SGX SDK provides the ability to write Intel SGX applications in Rust Programming Language
-
syncpool
A thread-friendly library for recycle of heavy and heap-based objects to reduce allocation and memory pressure
-
escoba
Useful broom to clean your RAM in Window$
-
broxus-util
A collection of utils used at Broxus
-
linear_curve_fit
A
no_std
and noalloc
library for linear curve coefficents calculation -
alloc_cat
allocator for small-to-tiny Wasm projects in rust
-
process-memory
that can read/write the memory of other processes
-
hugealloc
Hugepage-aware allocator
-
rodeo
Fast dropping arena based on bumpalo
-
contiguous-arena
Efficient, reusable memory arena for Rust with support for contiguous memory blocks
-
unchecked-std
some methods from the Rust standard library without some checks
-
unescape_zero_copy
Unescape strings without allocating memory
-
untyped-box
A heap allocation utility when the datatype is unknown
-
memusage
Small trait utility to keep track of the memory usage of structs
-
dudy-malloc
Easy way to configure best memory allocation for each platforms
-
ferroc
A fast & lock-free memory allocator library
-
salloc
Safe C-like memory allocator for windows
-
olis_string
Small-string optimization for Rust, aims to replace std::string::String
-
default-boxed
Helper trait to help create large struct on heap directly
-
bbx
A robust, performant BBCode pull parser
-
columnation-master
An experimental columnar arena
-
fast-smr
Toward fast, wait-free, portable, and robust memory reclamation
-
arena-traits
Traits for arenas
-
mimalloc2-rust
the fork of the best binding for mimalloc in rust
-
vonneumann
executable memory for windows and unix
-
mappings
Get the mappings of a process (currently only on Linux)
-
r-efi-alloc
UEFI Memory Allocator Integration
-
persistence
A resizable, mutable array type implemented on top of mmap, providing persistence for arrays of data in memory
-
iter-chunks
Extend Iterator with chunks
-
btree-plus-store
B-trees backed by a slab/arena to reduce allocations and increase locality + copyable, immutable B-trees which must be manually dropped
-
index_arena
id-based, heterogeneous arena allocator
-
cactusref
Cycle-aware reference counting smart pointer
-
arena-alloc
A small arena allocator with a static backing store and ability to allocate arbitrary types
-
bump-into
a no_std bump allocator sourcing space from a user-provided slice
-
snap-buf
A copy on write byte buffer for efficient snapshotting
-
pprof_util
various utilities for representing and manipulating profiling data
-
scratchpad
Stack-like memory allocator with double-ended allocation support
-
align_constr
Like
aligned
but better. Newtype whose alignment is constrained not only by the inherent alignment requirements of the underlying type but also by the alignment requirements of the “alignment constraint archetype” -
moving_gc_arena
Lightweight Garbage-collectable regions using indices and explicit roots
-
mmap-vecdeque
A file-backed memory-mapped VecDeque with deferred commits, atomic and durable persistence
-
tikv-jemalloc-ctl
A safe wrapper over jemalloc's control and introspection APIs
-
arena-allocator
Virtual memory based linear allocator
-
rspack_allocator
rspack allocator
-
ps-alloc
a reasonably safe allocator
-
frusa
A system allocator with reclaim
-
dungeon-cell
Store (almost) any value as one type without dynamic memory
-
bumpalo-herd
Support for bumpalo in scoped threads & rayon
-
slabby
Maximally efficient allocation and deallocation of a large number of instances of a type
-
ouroboros_examples
Examples for the ouroboros crate
-
toolshed
Arena allocator and a handful of useful data structures
-
shard-ecs
The Shard Entity Component System
-
ialloc
Allocator interface traits
-
metrics-jemalloc
A small shim to provide metrics from the jemalloc runtime
-
cheap
cross platform allocator which communicate over the C ABI
-
containers
Containers
-
scudo
Rust Bindings for the Scudo Hardened Allocator
-
swap-pool
Allow objects to be stored either in RAM or on disk
-
system-mimalloc
system's shared mimalloc library as allocator
-
primordial
Low-level CPU primitives
-
phper-alloc
Alloc related items for phper crate
-
cl-generic-vec
a vector implementation that can be used in
no_std
envioronments -
alloca
Mostly safe wrapper for alloca
-
kobeni
An efficient and type-safe arena allocator for Rust, featuring fast memory allocation with unique u32-based indexing for heterogeneous types
-
pb-arena
arena allocator for graph based operations
-
memory_pages
memory_pages
provides a cross-platform memory management API which allows for acquiring memory pages from the kernel and setting permissions on them -
obj-pool
object arena
-
hipool
RUST Memory Pool
-
static_initializer
Global non-lazy zero-cost statics without
const fn
-
mimalloc-rust
the best binding for mimalloc in rust
-
kioku
A memory arena
-
sodg
Surging Object DiGraph (SODG)
-
memguar
that helps to optimize IO of large buffers in near-OOM state or with small amount of RAM
-
path_no_alloc
with_paths! macro, for joining paths ergonomically and without allocation
-
alloc-stdlib
A dynamic allocator example that may be used with the stdlib
-
refs
My vision of reference counting
-
bulk_allocator
Implementations of GlobalAlloc holding memory cache
-
memtable
Inmemory tables for use in Rust
-
effective-limits
Estimate effective resource limits for a process e.g. how much RAM is available for use.
-
ps-mmap
Easy memory mapping
-
generic-vec
a vector implementation that can be used in
no_std
envioronments -
hwlocality-sys
Low-level bindings for the hwloc hardware locality library
-
peakmem-alloc
An allocator wrapper that allows measuring peak memory consumption
-
musli-allocator
Allocators for Müsli
-
stylo_malloc_size_of
Support crate for Stylo CSS engine
-
roussillon-memory
Memory utility for the roussillon language
-
loro-thunderdome
Fork of thunderdome: Fast arena allocator with compact generational indices
-
rulloc
General purpose memory allocator
-
snmalloc-sys
rust raw bindings of snmalloc
-
aligners
alignment guarantees for data
-
pared
Projected reference counted pointers
-
hpt-allocator
An internal library for memory allocator for hpt
-
ora-storage-memory
Part of the Ora scheduler framework
-
libmimalloc-sys
Sys crate wrapping the mimalloc allocator
-
malloc-rust
Malloc implementation using Rust allocator
-
allocator-suite
Allocator Suite for various allocation types
-
backdrop
Drop your large or complex objects in the background with Backdrop! (later, on another thread, or both! Fully customizable! Tokio supported!)
-
gdcm_conv
Grassroots DICOM Library wrapper
-
product-os-tower
Product OS : Tower is a derivative of the tower crate restructured for both std and no_std environments
-
heapbuf
Fixed size heap buffer with optional custom alignment, ref counting and custom destructor logic
-
abin
working with binaries and strings. The library tries to avoid heap-allocations / memory-copy whenever possible by automatically choosing a reasonable strategy: stack for small binaries;…
-
refuse-pool
A string interner utilizing the Refuse garbage collector
-
alloc_geiger
allocator which makes sound when active, like a Geiger counter
-
talloc
A fast, consistant, and flexible
no_std
-compatible allocator -
pb-atomic-linked-list
An atomic insert-only linked list
-
recycle-box
A pointer type for heap-allocated objects which heap storage can be re-used, with Pin support
-
flatty
Flat message buffers
-
page-primer
speeds up your program by "priming" memory pages from your binary
-
bookcase_alloc
An arena allocator
-
timely-bytes-master
Disjoint mutable byte slices from a common allocation
-
yesallocator
implemting for rust
-
rlalloc
blazingly slow malloc replacement
-
alloc-compose
Composable allocator structures for plugging together more powerful allocators
-
graphannis-malloc_size_of
fork of the
malloc_size_of
crate, which is part of the Servo codebase, to make it available to the graphANNIS corpus search library as dependency -
ve
More compact Vec
-
vec-tree
A safe tree using an arena allocator that allows deletion without suffering from the ABA problem by using generational indices
-
haz-alloc
A general-purpose allocator written in Rust
-
panic-room
An experiment in panic handling with setjmp/longjmp and arenas
-
arc-swap-for-cow
Atomically swappable Arc
-
supply-chain-trust-example-crate-000064
Pre-allocated storage for a uniform data type
-
rattish
Cast between trait objects
-
context-allocator
-
core_malloc
Implementing abs_mm with a wrapper around crate alloc
-
tracking-allocator
global allocator that provides hooks for tracking allocation events
-
git_fetch_concurrently
Do
git fetch -p && git gc
in each sub directory concurrently -
rax
Rust wrapper for the ANSI C Radix Tree "rax" https://github.com/antirez/rax implementation used in Redis
-
sparse-bitfield
Bitfield that allocates a series of small buffers
-
range-action-map
A range tree, offering interval operation in kernel memory management, and deliver ACTION to actual VmArea。一个区间树结构,用于提供 mmap / munmap / mprotect 时对内核中区间的操作;
-
mmledger
A ledger for confidential computing (CC) shims for tracking memory management system calls
-
pipe
Synchronous Read/Write memory pipe
-
pseudo_pool
A pool-like collection that automatically returns objects to the pool & blocks when the pool is empty
-
maskerad_memory_allocators
custom allocators, for memory fragmentation prevention
-
bump_future
Type Erased Future Stored In Bump
-
hyperscan-sys
Hyperscan bindings for Rust with Multiple Pattern and Streaming Scan
-
thin-slice
An owned slice that packs the slice storage into a single word when possible
-
obstack
A fast, stack-based allocator, usable for any object
-
easyrw
Easy Read and Write functions in rust, External and Internal
-
slitter
A C- and Rust-callable slab allocator with a focus on safety
-
rebound
Full runtime reflection for Rust, with lifetime safety
-
vmem
resource management system theorized by Jeff Bonwick and Jonathan Adams in *[Magazines and Vmem: Extending the Slab Allocator to Many CPUs and Arbitrary Resources][1]*. It provides O(1)…
-
xalloc
Suballocators for external memory (e.g., Vulkan device memory)
-
typed-arena-nomut
The arena, a fast but limited type of allocator
-
loca
memory allocation
-
ghost-gc
A safe garbage collected arena
-
allocators
composable memory allocators and utilities for creating more
-
vecstorage
Re-use the memory for vectors containing values with different lifetimes
-
idcontain
Generational (or tagged) ID-based containers
-
discard
trait which allows for intentionally leaking memory
-
mutstr
A mutable alternative for
&str
-
nimix
An allocator designed to be use by a GC
-
flipflop
Stress-tester for double-ended iterators
-
init_array
Initialize arrays itemwise
-
boxext
Extensions to the
Box
type -
heapsz
calculating the heap usage of a data structure
-
markable_reader
reader which can be marked in a position to be returned to after subsequent reads
-
teaspoon
An allocator for when all you have is a teaspoon of memory
-
secret_mem
securely managing sensitive data in memory
-
sinter
An easy to use & fast global interning pool
-
opool
High-performance, lock-free local and concurrent object pool with automated allocation, cleanup, and verification
-
reap
parsing Ruby heap dumps
-
secrecy
Wrapper types and traits for secret management which help ensure they aren't accidentally copied, logged, or otherwise exposed (as much as possible), and also ensure secrets are securely wiped from memory when dropped
-
addr_of_enum
Get address of fields in enum item using stable Rust
-
lazy-heap
A lazy heap allocator for Rust based on
slab_allocator_rs
-
fixed-bump
A bump allocator that uses fixed-size chunks to ensure non-amortized O(1) allocations
-
refbox
A smart pointer with a single owner and many weak references
-
shmem-ipc
Untrusted IPC with maximum performance and minimum latency on Linux
-
wasm-nopackage
Basic alloc and dealloc and module setup for lightweight WASM modules
-
memory_storage
memory storage comparable to a Vec where removing items doesn't shift all the items after the removed item to the left and doesn't invalidate their IDs. It allows you to remove items…
-
nstd_core
NSTD core crate
-
zerogc
Zero overhead tracing garbage collection for rust
-
mstak-util
Minimal Stak Scheme utilities
-
splitrc
Thread-Safe Split Reference Counts
-
allocdeny
Deny the use of crate
alloc
-
rustc-ap-rustc_arena
Automatically published version of the package
rustc_arena
in the rust-lang/rust repository from commit 9a27044f42ace9eb652781b53f598e25d4e7e918 The publishing script for this crate lives at: https://github… -
light_arena
A lightweight, placement based memory arena for types which are Sized + Copy. This crate requires nightly.
-
memflow-native
System call based proxy-OS for memflow
-
refpool
Efficient memory pool with reference counting
-
dynamic-arena
Dynamically typed arenas, supporting any
Sized
type -
pool
reusable values
-
scx_rustland_core
Framework to implement sched_ext schedulers running in user space
-
piece
A collection of composable allocators
-
allocator_api
copy of the unstable allocator_api (https://github.com/rust-lang/rust/issues/32838) and of parts of the unstable alloc feature. Usable with stable rust, but requires 1.33
-
forgotten
globally and safely persist a value, implemented with ManuallyDrop
-
lockedbox
A Box-like type that prevents paging its contents to disk
-
aligned-buffer-pool
A buffer-pool with controllable alignment
-
rslab
A slab allocator for Rust
-
vectorscan-async
Wrapper for the vectorscan C++ regex library
-
josephine
using JavaScript to safely manage the lifetimes of Rust data
-
shuffling-allocator
A shuffling allocator, randomizing heap object locations; useful for avoiding accidental cache locality during benchmarking, which can obscure performance evaluation
-
stack-any
that provides a type that owns same size type on the stack for type erasure
-
onsen
Memory pool
-
dairy
A more compact, user friendly clone-on-write smart pointer
-
cubecl-hip-sys
Rust bindings for AMD ROCm HIP runtime libraries used by CubeCL
-
smallest-uint
Gets the smallest unsigned integer type that can represent a given value
-
owned-pin
A wrapper that both owns and pins data in memory
-
arena_system
An arena allocator which uses handles for accessing elements
-
async-alloc-counter
measures max allocations in a future invocation
-
rustc-arena-modified
rustc-arena ported to stable rust with additional features
-
build-array
Build an array dynamically without heap allocations
-
retry_alloc
A global allocator wrapper that will retry failed allocations
-
comprakt/lowering
A MiniJava compiler written in Rust
-
virt-arena
A virtual memory bump allocator
-
jrsonnet-interner
Jrsonnet string interning
-
arc_slice_pool
Arcs backed by chunks of contiguous memory
-
indexed
Convenient allocator for index-linked data structures
-
std-shims-mirror
series of std shims to make alloc more feasible. Mirrored by sneurlax from serai for downstream crate-publishing purposes until serai publishes their crates; use the versions from serai in production…
-
arcslab
Slab, but with reference counted items
-
alloc-fmt
Formatting utilities safe for use in an allocator
-
rs_sha512_224
rs_sha512_224
is a Rust implementation of the SHA-512/224 cryptographic hash algorithm, part of the largerrs_shield
project. This package provides SHA-512/224 hashing functionality in a standalone manner… -
slotmap-fork-otter
Slotmap data structure - temporary fork for Otter
-
diskallocator
For really big vectors: allocate on disk
-
conc
Hazard-pointer-based concurrent memory reclamation
-
stack_frame_allocators
A set of allocators based off the concept of the stack and creating "Frames". Push frames onto the Stack, push values onto Frames, and pop entire Frames and their items
-
rb-allocator
Memorry allocator for Ruby extensions
-
heap-ap
heap access point for anyone in rust, called to c
-
id-alloc
An id allocator implemented by the bitmap
-
arc-atomic-ref
small library that wraps arc-swap in Arc<T> so the atomic reference can be shared widely between many tasks/threads
-
nalloc
An allocator wrapper that can be turned on and off
-
numanji
Local-affinity first NUMA-aware allocator with optional fallback
-
maybe-std
Helper crate for writing rust libraries with an optional dependency on the standard library
-
bumpalo_try
Allocates a fallible iterator into a bumpalo
-
scoped-arena
Arena allocator with optional scopes
-
ipfs-embed-sqlite
small embeddable ipfs implementation
-
sodium-alloc
Allocator type that allocates memory using Sodium's secure memory utilities
-
alloc_buddy_simple
drop-in replacement allocator for Rust running on bare metal (no_std)
-
singlyton
Safe, single-threaded global state in Rust
-
zc
Self-referential zero-copy structure
-
gen-vec
Vector indexed with generational indices
-
customizable-buddy
A new buddy allocator that allows custom buddy finding algorithm
-
ma_proper
A securely overwriting memory allocator
-
alloc-facade
Facade for std-or-alloc imports
-
buf-ref-reader
Faster, growable buffering reader for when there's little to no need to modify data, nor to keep it alive past next read
-
aligned_box
Allocate heap memory with user-specified alignment
-
mmap-fixed-fixed
dealing with memory-mapped I/O This is a fork of a fork of the original rust-mmap with updated dependencies and a fix for the Windows version. This exists only because there are no other…
-
jrsonnet-gc
Tracing garbage collector plugin for Rust
-
cell-gc
A fun garbage collector for that virtual machine you're writing in Rust
-
tcmalloc2
Rust FFI bindings to tcmalloc
-
mos-alloc
allocator for mos architecture
-
map_box
Map the value in a Box, re-using the allocation when possible
-
ferris-gc
Flexible implementation of garbage collector for Rust
-
bsr
Tracing garbage collector for Amsel
-
memory-layout
explicit struct layouts
-
redox-buffer-pool
A buffer pool library for Redox, featuring a general-purpose 32-bit allocator
-
heapnotize
A smart pointer type for memory allocation on the stack
-
virtual-memory
allocating RWX memory on Unix and Windows
-
candump-parse
parsing the output of the
candump
utility -
shm_open_anonymous
Anonymous POSIX shared memory objects
-
emheap
Tiny memory manager for embedded system
-
calendrical_calculations
Calendrical calculations in Rust
-
vulkanalia-vma
An integration of Vulkan Memory Allocator with vulkanalia
-
flatty-io
Flat message transfer
-
win-lookaside
Windows Lookaside Kernel Allocator
-
dioxus-debug-cell
A clone of the standard library’s
RefCell
type with extra debugging support in non-release builds. Whenever a borrow error happens the current locations of where known borrows were created will be printed out as well. -
ra-ap-rustc_arena
Automatically published version of the package
rustc_arena
in the rust-lang/rust repository from commit 5113ed28ea1451a13eae3a05dca0dbabfd56f587 The publishing script for this crate lives at:… -
aliasable_deref_trait
Marker trait for types that deref to an address that is aliasable when coerced to a raw pointer
-
mvcc_cell
Software-transactional memory for Rust
-
netbuf
growable, contiguous buffer object with right assumptions and interface. Tuned for using it for network buffers.
-
tcmalloc
Drop-in global allocator using tcmalloc
-
pkey_mprotect
Typed
pkey_mprotect
wrapper -
craft-eraser
A set of simple type-erased box primitives
-
chunked-buffer
A chunked buffer for memory constrained systems
-
malloc-array
libc heap array allocator
-
rc_bump
An arena for heterogeneous types and without lifetimes
-
lazy-st
Single-threaded lazy evaluation
-
segvec
data structure for rust. Similar to Vec, but allocates memory in chunks of increasing size
-
rendy-memory
Rendy's memory manager
-
noop-allocator
An
Allocator
that does nothing -
clock-page-replacement
clock page replacement algorithm implementation
-
gc-sequence
a system for encoding safe points for computations running on gc-arena
-
mmap-append
Append-only memory-mapped I/O, resizable, with low lock contention
-
shredder
Garbage collection as a library for Rust
-
basic_allocator
A very simple global allocator written in pure Rust
-
mmapcell
wrapper for the memmap2 crate to cast mmap backed pointers to structs
-
contain
defining/extending lifetimes
-
alloc-ext
Useful extensions to alloc library
-
owned-alloc
help reducing manual memory management errors
-
shared_hashmap
A shared hashmap for use between processes, using shared memory
-
magic-buffer
a virtual ring buffer implementation that magically wraps around itself
-
hugepage-rs
wrapped allocator for linux hugepage
-
slab_typesafe
A wrapper for Slab that provides type-safe tokens instead of usize
-
malloc_buf
Structs for handling malloc'd memory passed to Rust
-
memalloc
Memory allocation in stable rust
-
mut_guard
Run a function after some data was mutably borrowed
-
gc_api
Generic abstractions for a multithreaded garbage collector
-
memory-cache-rs
local in-memory cache for Rust
-
libcre
WIP
-
seckey
Use
memsec
protected secret memory -
stadium
A allocated chunk of memory populated with a fixed set of types
-
index_alloc
A toy static allocator wich can serve as a global_allocator
-
leak-detect-allocator
Memory leak detector for nightly toolchain
-
acid_alloc
Bare-metal allocators
-
benemalloc
WIP: A fast, general-purpose memory allocator for Rust
-
esp-idf-alloc
An allocator for the ESP32 based on the ESP-IDF
-
libisoalloc-sys
Security oriented allocator
-
simple_arena
arena allocator for Rust
-
microstack
The simplest and the fastest implementation of a fixed-size stack on stack
-
broom
An ergonomic tracing garbage collector that supports mark 'n sweep garbage collection
-
buddy-allocator
A buddy allocator implementation supporting alloc-wg
-
static-rc
Compile-time reference counting
-
flatbuffers
Official FlatBuffers Rust runtime library
-
impl-macros
impl macros
-
rpmalloc-sys
Unsafe FFI bindings to rpmalloc C library
-
bulletproof
memory access
-
arcstring
Atomically reference-counted thin string type with SSO
-
wasm-tracing-allocator
A global allocator for Wasm that traces allocations and deallocations for debugging purposes
-
ezmem
Very basic library that provides simple functions for external memory hacking on Windows
-
scoped-gc
Derive plugin for the
scoped-gc
crate -
beton
A tree-backed slab allocator
-
dif
Device Information File, a library for reading .dif files into a Rust struct
-
yaap
A custom allocator facility playground
-
newlib-alloc
Global allocator for Rust no_std projects on newlib targets
-
slaballoc
Safe and lockless fixed-size memory allocator for
no_std
systems -
derivable-object-pool
A thread-safe derivable object pool collection with automatic reusage of objects
-
vecshard
Split Vecs in constant time
-
rcu-clean
Smart pointers using RCU with Deref support
-
faux_alloc
A fake 'allocator'
-
hybrid-rc
Thread-safe hybrid reference counting pointers
-
NEXMemory
Easily read, and write into a process's memory
-
bacon_rajan_cc
A reference counted type with cycle collection
-
neocortex
Shared memory crate designed for simplicity, safety, and extensibility
-
mmapio
Cross-platform Rust API for memory-mapped file IO
-
rusty_brainfck
A Small, Slightly Broken BrainFuck Interpreter, Available in both no-std contexts & std contexts
-
gladiator
A concurrent, modular and small garbage collector
-
rsgc
Concurrent GC library for Rust
-
sparkles-core
Core crate for sparkles
-
slice-arena
Store lots of tiny slices with low overhead, in contiguous blocks of memory
-
http-multipart
multipart for http crate type
-
storages
Storage backends for collections
-
flaw
Control-law-inspired embedded signal filtering, no-std and no-alloc compatible
-
dst-init
provide ways to emplace dynamic sized type
-
unkai
set for Rust's memory allocation APIs mainly focus on tracking and conditional analyzing / limiting memory usage
-
fallible_alloc
Fallible rust stable std collections allocations
-
fieldless_enum_tools
tools for enums without any fields
-
tux-owned-alloc
help reducing manual memory management errors
-
buddy-system
buddy system allocator for real-time usecases
-
wrc
A thread-safe weighted reference counting smart-pointer for Rust
-
bogo-alloc
An allocator that makes C/C++ developers feel right at home
-
gharial
test tool for program to manipulate memory directly
-
simt_hip_sys
part of simt. hip driver api bindings
-
lunatic-cached-process
Cached process lookups with lunatic
-
interloc
Middleware allocator for keeping track of memory usage
-
hyperscan-async
Wrapper for the hyperscan C++ regex library
-
transvec
safely transmute Vecs
-
memconstruct
Create values directly anywhere in memory. Create values directly on the heap.
-
zallocators
Bringing Zig like allocators to Rust
-
id_allocator
ID allocator adapted from. idalloc
-
mimalloc-rust-sys
mimalloc_rust hand writted sys binding
-
polymorph-allocator
memory allocator
-
alloc-cortex-m
A heap allocator for Cortex-M processors
-
movable
A structure whose internal content can be moved out immutably
-
mem_64
I can't remember the last time I forgot something!
-
silly-alloc
A collection of very basic allocators
-
gpu-alloc-ash
ash
backend forgpu-alloc
-
default_allocator
default (userspace) memory allocator
-
alloc_uefi
Allocator for a UEFI environment
-
box
The package provides a storage for unique static strings
-
zeroize_alloc
A zeroizing allocator wrapper
-
executable_memory
executable memory for windows and unix
-
gpu-descriptor-types
Core types of gpu-descriptor crate
-
rusty_malloc
A multithreaded yet simple memory allocator written in Rust
-
regc
A garbage collector that mixes Reference counting and mark sweeping
-
fixed_free_list
A fixed-size free-list with optional key lifetime safety and macroless unique typing
-
stable-alloc-shim
Stable shims for the Allocator API
-
stable-vec
A Vec-like collection which guarantees stable indices and features O(1) element deletion (semantically similar to
Vec<Option<T>>
). Useful for allocations in graphs or similar data structures. -
lines
Utililities for iterating readers efficiently line-by-line
-
index-pool
A pool which manages allocation of unique indices. Acts like a psuedo-memory allocator.
-
speedy_refs
A collection of simple and fast and useful smart pointers
-
rco-cell
Wrapper for Rc<RefCell<Option<T>>> and its weak variant. Includes various utilties for common operations usually performed on such a datastructure.
-
heterovec
In-place vector of dynamically sized type
-
poule
A pool of reusable values
-
shalloc
Implements the
GlobalAlloc
trait for supahero1’s allocator written in C: https://github.com/supahero1/alloc -
loupe
Profiling tool for Rust
-
limit-alloc
A custom allocator that allows to limit the available memory
-
generic-pool
A pool for recycling allocated objects for later reuse. Uses generic get/put methods so you can store (almost) any type in a single pool instance.
-
daktylos
memory-counting allocator
-
str-intern
string interner
-
fpool
Non-leased object-pooling
-
alloc-safe
Safe memory allocation, no panic!
-
pin-arc
Reference counting pointers without allocation using pinning
-
divvy-core
Composable allocators for Rust
-
shared_memory
A user friendly crate that allows you to share memory between processes
-
lock_free_buddy_allocator
Scalable lock-free buddy system allocator
-
nstd_collections
NSTD collections crate
-
arcon_allocator
Allocator for Arcon
-
byte-arena
no_std, no_alloc arena for allocating byte buffers
-
elise
A concurrent GC
-
alignas
Wrapper to specify object alignment generically
-
redox_uefi_alloc
UEFI allocation support
-
nano_arena
A tiny arena allocator that uses atomics
-
clip
A command line parser that doesn't use std or alloc!
-
shared_arena
A thread-safe & efficient memory pool
-
without-alloc
Replacements for
Box
,Rc
,Vec
, .. withoutalloc
-
std-shims
A series of std shims to make alloc more feasible
-
bra
Buffered random access to sequential data sources
-
simple_games
games
-
nanny
Safe native abstractions for Node
-
copy_arena
Arena allocator for types implementing Copy
-
tinyrand-alloc
Extensions for using tinyrand with alloc
-
tarc
Transposable, type-erasable, and FFI-safe Arc
-
simple-chunk-allocator
no_std
allocator written in Rust that manages memory in fixed-size chunks/blocks. Useful for basicno_std
binaries where you want to manage a heap of a few megabytes without complex… -
nvml
A mid-level wrapper around PMDK (the persistent memory development kit), formely NVML
-
object-alloc
An object allocator trait for Rust
-
wgpu-conveyor
Buffer belt abstraction for wgpu
-
mmu
Memory management unit abstractions
-
leak_slice
leak &mut [T] in favor of NonNull<[T]>
-
mmap-safe
A safe wrapper around file-backed memory maps
-
allocations
Thin cross-platform functions for memory allocation, deallocation and reallocation
-
shared-memory-allocator
An extremely unsafe experiment in writing a custom allocator to use linux shared memory
-
wrapper
A trait for types that wrap other types
-
maprc
Rc and Arc alternatives that allow the smart pointer to refer to just a portion of a reference-counted allocation
-
type_erased_vec
A type erased Vec
-
gc_plugin
Garbage collector plugin for rust-gc
-
pinvec
Growable vector-like structure which never moves its contents
-
efw
Framework for writing UEFI applications
-
libmimalloc-sys-rspack
Sys crate wrapping the mimalloc allocator
-
alloc_system
NO-STD,for Cortex-M based systems,simply retarget alloc_system to malloc/realloc/free
-
scudo-sys
C/FFI Bindings for the Scudo Hardened Allocator
-
falloc
fast allocator
-
dualhashkey
64-bit Dual-Hash-Key, strongly inspired by the Linux kernels dcache hashes
-
gg-alloc
A custom allocator that only returns pointers above 2G
-
study-example
a study example
-
alloc_buddy_simple2
drop-in replacement allocator for Rust running on bare metal (no_std)
-
dy_tlsf
TLSF (Two-level segmented fit) global allocator
-
nstd_alloc
NSTD memory allocation crate
-
binary-layout
allows type-safe, inplace, zero-copy access to structured binary data. You define a custom data layout and give it a slice of binary data, and it will allow you to read and write the…
-
haque
An abomination for messing with memory
-
forkheap
An allocator suitable for sharing heaps between forked processes on Linux
-
maskerad_stack_allocator
Stack-based allocators, for contiguous allocation and memory fragmentation prevention
-
rustbuddy
buddy memory allocation algorithm
-
bufpool
Vec<u8> pool allocator
-
memory_addresses
Unified virtual and physical address types for the Hermit ecosystem and beyond
-
flatbuffers-owned
that enables a more flexible usage of FlatBuffers
-
staging-tracking-allocator
Tracking allocator to control the amount of memory consumed by the process
-
card10-alloc
Dynamic memory allocation for card10 l0dables
-
memory_units
Safe conversions between units of memory
-
function_string_builder
A string builder that takes a user-provided function
-
generic_slab
Pre-allocated storage for a uniform data type
-
hwlocality
Idiomatic Rust bindings for the hwloc hardware locality library
-
vitallocator
allocator interface to the PS Vita kernel allocator
-
tralloc
trace allocations and deallocations
-
haz-alloc-core
A general-purpose allocator written in Rust, without system symbols
-
allocator
-
userfaultfd-sys
Low-level bindings for userfaultfd functionality on Linux
-
memory_addr
Wrappers and helper functions for physical and virtual addresses
-
quickdry
Bump-pointer arena allocator
-
unscrupulous
Types that do not care about provenance
-
bumpslab
A slab allocator with stable references
-
memoria
Memory allocation tracker. A bad memory profiler for production.
-
compact
Store objects containing dynamic fields either compactly in consecutive memory or using traditional heap pointers
-
recycler
A small Rust library for recycling types containing owned memory
-
cfixed-string
Pass Rust strings to C with potentially not needing heap allocation
-
trust_me
Just replace unsafe keyword to
safe!
macro. Always trust programmers. -
closure_attr
An attribute macro to simplify closure captures
-
remem
Thread-safe object reuse
-
dybs
An experiment in dynamic single-owner, multiple-borrow smart pointers
-
trickster
user-friendly linux memory hacking library
-
same-alloc
Reuse an allocated buffer for data with different types
-
weak-table
Weak hash maps and sets
-
const-alloc
Allocate dynamic memory at compile time
-
yesallocator-sys
yesallocator connection to the c backend
-
zerogc-context
Handles the context of a zerogc collector
-
membank
A pool of reusable memory to prevent unnecessary deallocations
-
bh_alloc
A fuzzer friendly bump pointer allocator
-
fixed-size-allocator
A fixed-size allocator
-
easy_mmap
Strongly typed memory mapped files that allow for easy manipulation of large amounts of data
-
anycast
Allows upcasting to Any
-
trove
arena allocator
-
polymock
A thread-safe arena bytes allocator
-
boxing-arena
reuse of Box allocation
-
memacc
Memory access functions
-
stor
Helpers for genericising over storage types
-
alleakator
leaking global allocator
-
memsecurity
Securely hold secrets in memory and protect them against cross-protection-boundary readout via microarchitectural, via attacks on physical layout, and via coldboot attacks
-
heaparray
Flexible support for dynamically-sized types, using heap-allocated array of structs
-
untyped-arena
Arena allocator implementation that is safe and untyped with minimal complexity
-
scope_gc
Scope GC
-
cable
A cable(pointer) with a hook(header at address) at the end and a sized payload(array)
-
mimalloc-sys
Rust FFI bindings to mimalloc
-
vec_cell
A Vec with interior mutability and dynamically checked borrow rules which allows to take disjoint mutable references to its elements
-
simple-slab
Fast and lightweight Slab Allocator
-
dbs-address-space
address space manager for virtual machines
-
jenga
A stack based allocator
-
mimalloc2
-
ring-alloc
Specialized allocator for short-living objects
-
regalloc2
Backtracking register allocator inspired from IonMonkey
-
sanitation
developing memory-safe programs while detecting and capturing possibly malicious bytes
-
heaptrack
Easily track heap usage with this allocator wrapper
-
io_uring_mmap
internal crate
-
rs-mem
minimal memory helpers (no dependency on std)
-
mimallocate-sys
Beta bindings to the mimalloc allocator
-
planus-lexer
Internal lexer library for planus
-
scoped_allocator
A scoped linear allocator
-
ordered-pool-allocator
A fast and compact pool allocator with block sorting support
-
fallacy-box
fallible Box
-
shared_slab
Data structure with shared insertion
-
mappable-rc
mappable reference counted types
-
eko-gc
Scoped garbage collector
-
alloc-metrics
A global allocator that tracks allocation metrics
-
chromium
add some stability to your metal!
-
mimalloc2-rust-sys
fork of the mimalloc_rust hand writted sys binding
-
slab_allocator_rs
Slab allocator for no_std systems. Uses multiple slabs with blocks of different sizes and a buddy system allocator for blocks larger than 4096 bytes. Updated to latest nightly rust
-
accounting-allocator
A global memory allocator wrapper which counts allocated and deallocated bytes
-
slot-arena
Compacted memory allocation using opaque references
-
corrida
Heterogenous Arena Allocator
-
heapless_matrix
efficient implementation of a matrix data structure in Rust. It offers functionality for creating, manipulating, and performing operations on matrices, such as transposition, summation, and multiplication.
-
mmap-allocator
struct implementing trait std::alloc::GlobalAlloc for unix
-
crndm
Persistent Programming Library
-
memflow-kvm
kvm connector for the memflow physical memory introspection framework
-
gomicollector
mark-sweep garbage collector
-
empty-box
Allows for
Box
s to have their values moved out and replaced with new values, while reusing the same allocation -
block_allocator
Thread-safe, fixed-size allocator that serves re-usable blocks
-
page_table_multiarch
Generic page table structures for various hardware architectures
-
malloc_freq
Malloc frequency profiler
-
super-slab
Pre-allocated storage for a uniform data type, based upon slab
-
sharedptr
Rust Sharedptr
-
vulkan-malloc
A general purpose device memory allocator for Vulkan
-
cesium-allocator
Allocator pool for managing sets of allocators
-
alloc-checked
Collections that don't panic on alloc failures
-
warlock
Arena allocation optimized collections
-
walloc
Malloc's Wario - allocates unusable, arbitrarily-sized blocks of memory on-command. Great for, uh, testing purposes?
-
reclaim
trait-based abstract interface for memory reclamation
-
elsa
Append-only collections for Rust where borrows to entries can outlive insertions
-
heap-slice
Basically
Box<[T]>
but smaller stack size -
bbq2
A SPSC, lockless, no_std, thread safe, queue, based on BipBuffers
-
outsource-heap
Shoving your heap in random places
-
rust_jemalloc_pprof_internal
Used internally by rust_jemalloc_pprof
-
alloc_counter
Count allocations, reallocations, deallocations. Allow, deny, or forbid allocations on an expression or function basis.
-
linear-malloc
An ultra simple single-threaded linear allocator
-
alloc-traits
Traits to replace or supplement the alloc module in no_std
-
guard-trait
Contains fundamental wrappers for pointer types that can safely be shared in memory-sharing completion-based I/O interfaces
-
dumpalo
A minimalistic global bump allocator
-
slot
type-shaped chunk of memory
-
cbloom
Concurrent implementation of Bloom filters
-
generational-arena
A safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices
-
mbox
malloc-based box. Supports wrapping pointers or null-terminated strings returned from malloc as a Rust type, which will be free'd on drop
-
compact_str
A memory efficient string type that transparently stores strings on the stack, when possible
-
foundation-arena
Heapless arena allocator
-
zalloc
A global allocator wrapper zeroizing memory on dealloc
-
weak-alloc
A custom allocator that can be given ownership of data, returning a WeakRef
-
fluke-buffet
Buffer management for the
fluke
crate -
slab_32
Forked from the main slab crate as an experiment. Don't use.
-
audio-garbage-collector
Wrapper on top of
basedrop
that provides a drop-in GC API that’ll collect reference-counted values on a background thread -
freelist
datastructure implementation providing unsafe access to backing storage
-
vec-arena
object arena
-
string-pool
Global immutable string pool, like Java
-
slimbox
A thin pointer type for heap allocation
-
hv-stampede
Bumpalo-based arena allocation utilities for Heavy
-
ralloc_shim
The binding layer for the rallc memory allocator
-
growable
reusable box for Rust
-
dummy-alloc
Global allocator that fails all allocations
-
cev
An expandable data array used to add data to the beginning of the array
-
ringu
Thread-safe no_std ring buffer
-
viaptr
An experimental library for packing complex types into pointer-sized fields
-
bip
bip (
Box
in place) provides a fully generic in-placemap
for theBox
type, taking care to be panic-safe and not leak memory -
shared_slice
Thread-local and thread-safe shared slice types, like
&[T]
but without lifetimes. This library depends only onalloc
andcore
, so can be used in environments withoutstd
. -
maligned
A memory alignment library
-
armory
a fast pool for storing lots of objects of one type without fragmenting
-
ebri
[NOTE: un-tested. use at your own risk.] ebri (ebr-integrated), that is, a
no-std
EBR (Epoch-Based Reclamation) implementation. thanks to the idea fromscc::ebr
. -
Pointers_Study_With_Core_Concepts
A study on rust smart pointers, with their essential concepts documented
-
mmslice
-
dreck
A safe tracing garbage collection library with minimal safety bookkeeping
-
scanflow
memory scanning library based on memflow
-
storagevec
Feature-gated heap-based/stack-based map and vector structures
-
rt-own
runtime ownership: owner, sharer and holder
-
tikv-jemallocator-global
Sets
jemalloc
as the#[global_allocator]
-
squash
More space efficient encoding of owned heap-allocated slices
-
ruyi-slab
An object based allocator
-
concurrent-slotmap
A lock-free concurrent slotmap
-
bronze_gc
The Bronze garbage collector for Rust. This version only includes the API for creating and using GC references; it does not actually collect anything. For experimental purposes only.
-
network-collections
Collections suitable for use with networking, particularly when a fixed memory usage is required to prevent out-of-memory crashes. Includes two kinds of least recently used caches, a bounded hash map…
-
hato
Heterogeneous Arenas of Trait Objects
-
ptr_cell
Thread-safe cell based on atomic pointers
-
veryfast
Fast Rust and other tools for game development
-
lib_malloc_freq
Use malloc frequency profiler (malloc_freq) via LD_PRELOAD
-
dense-heap
code defines a custom allocator called
DHeap
(Dense Heap) and a smart pointer calledDBox
(Dense Box). TheDHeap
is responsible for managing memory allocation, while theDBox
… -
persian-rug
Framework for bringing together disparate objects with inconvenient relationships
-
slice-pool
using a slice as a memory pool
-
tracing-allocator
track allocations and deallocations
-
bdwgc-sys
Boehm-Demers-Weiser garbage collector bindings for Rust
-
easy-pool
An easy way to reuse your objects without reallocating memory every time
-
copying_gc
copying garbage collector
-
arc_queue_pool
A pool of Arcs that are dropped in the same order they were created
-
caja
Adds the Caja struct which is basically Box<[T;n]>, but n can be not known at compile-time
-
virtual-buffer
A cross-platform library for dealing with buffers backed by raw virtual memory
-
slice-pool2
using a slice as a memory pool
-
bump-allocator
A high performance `#[global_allocator] implementation using the bump-pointer allocation algorithm
-
map_in_place
Reuse the memory of a Vec<T>, Box<[T]> or Box<T> when mapping the elements if possible
-
rccell
A convenient wrapper for Rc<RefCell<T>>