-
arc-swap
Atomically swappable Arc
-
bumpalo
A fast bump allocation arena for Rust
-
memmap2
Cross-platform Rust API for memory-mapped file IO
-
slotmap
Slotmap data structure
-
tikv-jemallocator
A Rust allocator backed by jemalloc
-
jemallocator
A Rust allocator backed by jemalloc
-
vm-memory
Safe abstractions for accessing the VM physical memory
-
gc
Tracing garbage collector plugin for Rust
-
linked_list_allocator
Simple allocator usable for no_std systems. It builds a linked list from the freed blocks and thus needs no additional data structures.
-
snmalloc-rs
rust bindings of snmalloc
-
slab
Pre-allocated storage for a uniform data type
-
alloc-no-stdlib
A 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…
-
gpu-alloc
Implementation agnostic memory allocator for Vulkan like APIs
-
heapless
static
friendly data structures that don’t require dynamic memory allocation -
concread
Concurrently Readable Data-Structures for Rust
-
weak-table
Weak hash maps and sets
-
mimalloc
Performance and security oriented drop-in allocator
-
wee_alloc
wee_alloc: The Wasm-Enabled, Elfin Allocator
-
checkers
A sanity checker for global allocations
-
thunderdome
Fast arena allocator with compact generational indices
-
smallbox
Small Box
optimization: store small item on stack and fallback to heap for large item -
typed-arena
The arena, a fast but limited type of allocator
-
snmalloc-sys
rust raw bindings of snmalloc
-
rpmalloc
Cross-platform global memory allocator using rpmalloc
-
memflow
core components of the memflow physical memory introspection framework
-
memsec
Rust implementation
libsodium/utils
-
yoke
Abstraction allowing borrowed data to be carried along with the backing data it borrows from
-
alloc-cortex-m
A heap allocator for Cortex-M processors
-
shared_memory
A user friendly crate that allows you to share memory between processes
-
malloced
A malloc-ed box pointer type
-
pin-weak
Small wrapper around an equivalent of Pin<Weak>
-
rctree
A ‘DOM-like’ tree implemented using reference counting
-
gbm
libgbm bindings for rust
-
stats_alloc
An allocator wrapper that allows for instrumenting global allocators
-
secmem-alloc
Custom allocators for secret memory
-
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
-
flatbuffers
Official FlatBuffers Rust runtime library
-
scoped-arena
Arena allocator with optional scopes
-
generational-arena
A safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices
-
slabmalloc
Simple 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.
-
stronghold-runtime
Data structures for memory protection at runtime
-
vm-allocator
Helpers for allocating resources needed during the lifetime of a VM
-
range-alloc
Generic range allocator used by gfx-rs backends
-
process_vm_io
I/O access to virtual memory contents of processes
-
rabuf
randome access buffer for io
-
syncpool
A thread-friendly library for recycle of heavy and heap-based objects to reduce allocation and memory pressure
-
ra_ap_la-arena
Simple index-based arena without deletion
-
object-pool
A thread-safe object pool with automatic return and attach/detach semantics
-
jemalloc-ctl
A safe wrapper over jemalloc’s control and introspection APIs
-
fixed-bump
A bump allocator that uses fixed-size chunks to ensure non-amortized O(1) allocations
-
second-stack
A fast slice allocator for short-lived allocations
-
hybrid-rc
Thread-safe hybrid reference counting pointers
-
mmtk
MMTk is a framework for the design and implementation of high-performance and portable memory managers
-
memvec
Memory-backed vector, not buffer. Designed for for mmap. Not MemMap, but MemVec!
-
qcell
Statically-checked alternatives to RefCell and RwLock
-
typed-slab
Typed wrapper for Slab
-
moving_gc_arena
Lightweight Garbage-collectable regions using indices and explicit roots
-
gc-arena
safe garbage collected arenas
-
boa_gc
Garbage collector used in Boa
-
static-alloc
A bump allocator on static memory for the alloc-traits crate
-
jrsonnet-gcmodule
Cyclic garbage collection inspired by CPython’s gc implementation
-
cache-size
A library for finding your L1/L2/L3 cache sizes
-
buddy_system_allocator
A bare metal allocator that uses buddy system
-
default-boxed
Helper trait to help create large struct on heap directly
-
refbox
A smart pointer with a single owner and many weak references
-
hirpdag_hashconsing
Various hashconsing implementations with a common interface
-
scratchpad
Stack-like memory allocator with double-ended allocation support
-
simple-chunk-allocator
A simple
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… -
sensitive
Memory allocator for sensitive information
-
yoke-derive
Custom derive for the yoke crate
-
lifeguard
An object pool manager in Rust
-
bacon_rajan_cc
A reference counted type with cycle collection
-
mapr
Cross-platform Rust API for memory-mapped file IO
-
tracking-allocator
global allocator that provides hooks for tracking allocation events
-
xalloc
Suballocators for external memory (e.g., Vulkan device memory)
-
cactusref
Cycle-aware reference counting smart pointer
-
haphazard
Dynamic memory management for lock-free data structures using hazard pointers
-
static-rc
Compile-time reference counting
-
stuff
Stuffing things into pointers
-
buddy-alloc
Buddy-alloc is a memory allocator for no-std Rust, used for embedded environments
-
dairy
A more compact, user friendly clone-on-write smart pointer
-
transvec
A crate to safely transmute Vecs
-
bdwgc-alloc
impl GlobalAlloc for bdwgc
-
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” -
forgotten
globally and safely persist a value, implemented with ManuallyDrop
-
triple_arena
Arena supporting non-Clone types, deletion, and more
-
memflow-qemu
qemu connector for the memflow physical memory introspection framework
-
smallest-uint
Gets the smallest unsigned integer type that can represent a given value
-
la-arena
Simple index-based arena without deletion
-
memmap
Cross-platform Rust API for memory-mapped file IO
-
libmimalloc-sys
Sys crate wrapping the mimalloc allocator
-
discard
Discard trait which allows for intentionally leaking memory
-
cell-gc
A fun garbage collector for that virtual machine you’re writing in Rust
-
allocator_api
This is a 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
-
wrc
A thread-safe weighted reference counting smart-pointer for Rust
-
nstd_alloc
NSTD memory allocation crate
-
pi_slotmap
Slotmap data structure
-
rb-allocator
Memorry allocator for Ruby extensions
-
composable-allocators
Composable memory allocators for new allocator API
-
vecstorage
Re-use the memory for vectors containing values with different lifetimes
-
pkey_mprotect
Typed
pkey_mprotect
wrapper -
memflow-win32
win32 integration of the memflow physical memory introspection framework
-
quickdry
Bump-pointer arena allocator
-
drop-bin
Defer running expensive destructors until later
-
phper-alloc
Alloc related items for phper crate
-
a_r_c_h_e_r_y
TEMPORARY CRATE
-
shared_arena
A thread-safe & efficient memory pool
-
vec-tree
A safe tree using an arena allocator that allows deletion without suffering from the ABA problem by using generational indices
-
ralloc_shim
The binding layer for the rallc memory allocator
-
mockalloc
A crate to allow testing code which uses the global allocator
-
jrsonnet-gc
Tracing garbage collector plugin for Rust
-
index-pool
A pool which manages allocation of unique indices. Acts like a psuedo-memory allocator.
-
vptr
Thin references to trait objects by embedding the virtual table pointer in the struct
-
indexed
Convenient allocator for index-linked data structures
-
leak_slice
leak &mut [T] in favor of NonNull<[T]>
-
ghost-cell
Compile-time zero-cost borrow-checking of aliased references
-
rpmalloc-sys
Unsafe FFI bindings to rpmalloc C library
-
gcmodule
Cyclic garbage collection inspired by CPython’s gc implementation
-
allocator-suite
Allocator Suite for various allocation types
-
compact_arena
A crate with some types to allow indexed arenas with small memory footprint
-
refpool
Efficient memory pool with reference counting
-
ma_proper
A securely overwriting memory allocator
-
fixed-typed-arena
A typed arena that uses fixed-size chunks to ensure non-amortized O(1) allocations
-
haz-alloc
A general-purpose allocator written in Rust
-
owned-alloc
A crate to help reducing manual memory management errors
-
rebound
Full runtime reflection for Rust, with lifetime safety
-
without-alloc
Replacements for
Box
,Rc
,Vec
, .. withoutalloc
-
tikv-jemalloc-ctl
A safe wrapper over jemalloc’s control and introspection APIs
-
shredder
Garbage collection as a library for Rust
-
typed-arena-nomut
The arena, a fast but limited type of allocator
-
allocators
composable memory allocators and utilities for creating more
-
genmap
A simple generational map data structure with no dependencies
-
heaparray
Flexible support for dynamically-sized types, using heap-allocated array of structs
-
zst
Zero-sized generic type with the associated type exposing the type parameter
-
jemalloc-sys
Rust FFI bindings to jemalloc
-
stadium
A allocated chunk of memory populated with a fixed set of types
-
slotmap-fork-otter
Slotmap data structure - temporary fork for Otter
-
aliasable_deref_trait
Marker trait for types that deref to an address that is aliasable when coerced to a raw pointer
-
handy
A library providing handles and handlemaps
-
alloc-safe
Safe memory allocation, no panic!
-
rccell
A convenient wrapper for Rc<RefCell>
-
obstack
A fast, stack-based allocator, usable for any object
-
persian-rug
Framework for bringing together disparate objects with inconvenient relationships
-
mos-alloc
allocator for mos architecture
-
ferris-gc
Flexible implementation of garbage collector for Rust
-
tcmalloc
Drop-in global allocator using tcmalloc
-
memur
Arena storage with bells and whistles
-
memusage
Small trait utility to keep track of the memory usage of structs
-
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.
-
recycle-box
A pointer type for heap-allocated objects which heap storage can be re-used, with Pin support
-
jrsonnet-interner
Jrsonnet string interning
-
heterovec
In-place vector of dynamically sized type
-
thinnable
Thin references to unsized types
-
alloc-stdlib
A dynamic allocator example that may be used with the stdlib
-
memory-cache-rs
Simple local in-memory cache for Rust
-
untyped-arena
untyped-arena provides an Arena allocator implementation that is safe and untyped with minimal complexity
-
maskerad_memory_allocators
custom allocators, for memory fragmentation prevention
-
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
-
heapnotize
A smart pointer type for memory allocation on the stack
-
gc_api
Generic abstractions for a multithreaded garbage collector
-
mmapio
Cross-platform Rust API for memory-mapped file IO
-
growable
A growable, reusable box for Rust
-
mempool
A fast thread safe memory pool for reusing allocations
-
slice-pool
A library for using a slice as a memory pool
-
zc
Self-referential zero-copy structure
-
nano_arena
A tiny arena allocator that uses atomics
-
possibly_uninit
Traits and types helping with using uninitialized memory safely
-
pure_cell
Alternative to GhostCell that provides safe interior mutability via const expressions
-
alloc-from-pool
Single-threaded object pool implementation
-
crndm
Persistent Programming Library
-
dreck
A safe tracing garbage collection library with minimal safety bookkeeping
-
obj-pool
A simple object arena
-
numanji
Local-affinity first NUMA-aware allocator with optional fallback
-
slab_32
Forked from the main slab crate as an experiment. Don’t use.
-
redox-buffer-pool
A buffer pool library for Redox, featuring a general-purpose 32-bit allocator
-
aren_alloc
Simple allocator for small copyable objects inspired by object-pools
-
sodium-alloc
Allocator type that allocates memory using Sodium’s secure memory utilities
-
malloc_freq
Malloc frequency profiler
-
fallacy-alloc
A library for fallible allocation
-
shuffling-allocator
A shuffling allocator, randomizing heap object locations; useful for avoiding accidental cache locality during benchmarking, which can obscure performance evaluation
-
zerogc-simple
Lightweight mark/sweep collector for zerogc
-
alleakator
leaking global allocator
-
fallible_alloc
Fallible rust stable std collections allocations
-
zerofrom-derive
Custom derive for the zerofrom crate
-
include_bytes_aligned
A simple macro that embeds the bytes of an external file into the executable and guarantees that they are aligned
-
bulletproof
Bulletproof memory access
-
mut_guard
Run a function after some data was mutably borrowed
-
zerogc-context
Handles the context of a zerogc collector
-
aligned_box
Allocate heap memory with user-specified alignment
-
pi_pointer
Pointer, similar to arc and RC, but will allocate similar objects in a continuous space
-
faux_alloc
A fake ‘allocator’
-
memuse
Traits for measuring dynamic memory usage of types
-
linear-malloc
An ultra simple single-threaded linear allocator
-
refmove
An experimental implementation of library-level by-move references
-
netbuf
The simple to use, growable, contiguous buffer object with right assumptions and interface. Tuned for using it for network buffers.
-
bra
Buffered random access to sequential data sources
-
copy_arena
Arena allocator for types implementing Copy
-
maskerad_stack_allocator
Stack-based allocators, for contiguous allocation and memory fragmentation prevention
-
gpu-alloc-erupt
erupt
backend forgpu-alloc
-
stack-buffer
Stack buffer provides alternatives to BufReader and BufWriter allocated on the stack instead of the heap