CATEGORY
Memory management 1,342 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
once_cellSingle assignment cells and lazy values.1,076,578,011MIT OR Apache-2.0
lazy_staticA macro for declaring lazily evaluated statics in Rust.866,141,716MIT OR Apache-2.0
slabPre-allocated storage for a uniform data type782,808,612MIT
zeroizeSecurely clear secrets from memory with a simple trait built on
stable Rust primitives which guarantee memory is zeroed using…578,456,418Apache-2.0 OR MIT
crossbeam-epochEpoch-based garbage collection562,896,962MIT OR Apache-2.0
stable_deref_traitAn unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with…538,642,840MIT OR Apache-2.0
bumpaloA fast bump allocation arena for Rust.486,596,584MIT OR Apache-2.0
sharded-slabA lock-free concurrent slab.463,212,870MIT
yokeAbstraction allowing borrowed data to be carried along with the backing data it borrows from459,064,653Unicode-3.0
yoke-deriveCustom derive for the yoke crate454,633,429Unicode-3.0
zerovecZero-copy vector backed by a byte array450,648,481Unicode-3.0
zerovec-deriveCustom derive for the zerovec crate445,794,098Unicode-3.0
zerofrom-deriveCustom derive for the zerofrom crate438,160,016Unicode-3.0
arc-swapAtomically swappable Arc271,936,156MIT OR Apache-2.0
zeroize_deriveCustom derive support for zeroize211,884,636Apache-2.0 OR MIT
secrecyWrapper types and traits for secret management which help ensure
they aren't accidentally copied, logged, or otherwise…135,115,357Apache-2.0 OR MIT
compact_strA memory efficient string type that transparently stores strings on the stack, when possible122,951,713MIT
crossbeamTools for concurrent programming121,942,065MIT OR Apache-2.0
id-arenaA simple, id-based arena.101,997,736MIT/Apache-2.0
slotmapSlotmap data structure88,263,233Zlib
flatbuffersOfficial FlatBuffers Rust runtime library.87,208,649Apache-2.0
tikv-jemallocatorA Rust allocator backed by jemalloc82,555,491MIT/Apache-2.0
sddScalable lock-free delayed memory reclaimer76,211,003Apache-2.0
typed-arenaThe arena, a fast but limited type of allocator71,224,116MIT
beefMore compact Cow63,407,936MIT OR Apache-2.0
tikv-jemalloc-ctlA safe wrapper over jemalloc's control and introspection APIs54,674,103MIT/Apache-2.0
self_cellSafe-to-use proc-macro-free self-referential structs in stable Rust.52,164,547Apache-2.0 OR GPL-2.0-only
arraydequeA ring buffer with a fixed capacity, which can be stored on the stack.51,162,307MIT/Apache-2.0
libmimalloc-sysSys crate wrapping the mimalloc allocator44,898,451MIT
mimallocPerformance and security oriented drop-in allocator44,895,858MIT
lockfree-object-poolA thread-safe object pool collection with automatic return and attach/detach semantics.28,579,657BSL-1.0
jemallocatorA Rust allocator backed by jemalloc26,575,552MIT/Apache-2.0
alignedA newtype with alignment of at least `A` bytes26,388,198MIT OR Apache-2.0
gpu-allocImplementation agnostic memory allocator for Vulkan like APIs21,690,235MIT OR Apache-2.0
gpu-alloc-typesCore types of gpu-alloc crate20,983,058MIT OR Apache-2.0
archeryAbstract over the atomicity of reference-counting pointers19,063,530MIT
arcstrA better reference-counted string type, with zero-cost (allocation-free) support for string literals, and reference counted…18,780,699Apache-2.0 OR MIT OR Zlib
get-size-deriveDerives the GetSize trait.16,899,573MIT
get-sizeDetermine the size in bytes an object occupies inside RAM.16,704,694MIT
discardDiscard trait which allows for intentionally leaking memory15,462,671MIT
planusPlanus is an alternative compiler for flatbuffers, an efficient cross platform serialization library.15,152,154MIT/Apache-2.0
internmentEasy interning of data13,556,926MIT OR Apache-2.0
range-allocGeneric range allocator13,320,754MIT OR Apache-2.0
jemalloc-ctlA safe wrapper over jemalloc's control and introspection APIs13,306,395MIT/Apache-2.0
static_initSafe mutable static and non const static initialization, and code execution at program startup/exit.11,988,265MIT OR Apache-2.0
presserA crate to help you copy things into raw buffers without invoking spooky action at a distance (undefined behavior).11,640,928MIT OR Apache-2.0
mutate_onceInterior mutability, write-once and borrowable as plain &T11,595,308BSD-2-Clause
seizeFast, efficient, and predictable memory reclamation for concurrent data structures.10,455,537MIT
jemalloc_pprofConvert jemalloc heap profiles to pprof to understand memory usage, fix memory leaks, and fix OOM Kills.10,222,759Apache-2.0
calendrical_calculationsCalendrical calculations in Rust9,710,185Apache-2.0
uninitA collection of tools for a safer usage of uninitialized memory9,632,274Zlib OR MIT OR Apache-2.0
snmalloc-sysrust raw bindings of snmalloc.9,503,527MIT
memory_unitsSafe conversions between units of memory9,489,397MPL-2.0
snmalloc-rsrust bindings of snmalloc.9,445,158MIT
generational-arenaA safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices.9,300,331MPL-2.0
async-once-cellAsync single assignment cells and lazy values.8,172,259MIT OR Apache-2.0
cudarcSafe and minimal CUDA bindings6,291,735MIT OR Apache-2.0
vm-memorySafe abstractions for accessing the VM physical memory6,180,461Apache-2.0 OR BSD-3-Clause
strckChecked owned and borrowed strings5,492,713MIT
d3d12Low level D3D12 API wrapper5,390,781MIT OR Apache-2.0
wee_allocwee_alloc: The Wasm-Enabled, Elfin Allocator5,258,753MPL-2.0
deepsizeA crate for measuring the total size of object on the stack and heap4,700,924MIT
deepsize_deriveA crate for measuring the total size of object on the stack and heap4,696,242MIT
shared_memoryA user friendly crate that allows you to share memory between processes4,691,153MIT OR Apache-2.0
aligned-arrayA newtype with alignment of at least `A` bytes4,638,151MIT OR Apache-2.0
get-size2Determine the size in bytes an object occupies inside RAM.4,226,271MIT OR Apache-2.0
flexbuffersOfficial FlexBuffers Rust runtime library.4,050,162Apache-2.0
get-size-derive2Derives the GetSize trait.3,964,265MIT OR Apache-2.0
safe-transmuteA safeguarded transmute() for Rust3,874,862MIT
aliasable_deref_traitMarker trait for types that deref to an address that is aliasable when coerced to a raw pointer3,838,090MIT
micromapThe fastest alternative to HashMap, for maps smaller than 20 keys3,804,165MIT
memuseTraits for measuring dynamic memory usage of types3,799,498MIT/Apache-2.0
vec-arenaA simple object arena3,759,022Apache-2.0 OR MIT
fallible_collectionsa crate which adds fallible allocation api to std collections3,756,223MIT OR Apache-2.0
deferUtility to defer excecution of code, inspired by go's defer statement.3,704,734MIT/Apache-2.0
token-cellA more convenient GhostCell3,510,304EPL-2.0 OR Apache-2.0
la-arenaSimple index-based arena without deletion.3,485,489MIT OR Apache-2.0
include-flateA variant of include_bytes!/include_str! with compile-time deflation and runtime lazy inflation3,402,512Apache-2.0
r-efi-allocUEFI Memory Allocator Integration3,161,772MIT OR Apache-2.0 OR LGPL-2.1-or-later
foundationsA Rust service foundations library.3,136,988BSD-3-Clause
object-poolA thread-safe object pool with automatic return and attach/detach semantics3,033,536MIT/Apache-2.0
mboxmalloc-based box.
Supports wrapping pointers or null-terminated strings returned from malloc as a Rust type, which
will be…2,927,297MIT
memsecRust implementation `libsodium/utils`.2,421,898MIT
associative-cacheA generic N-way associative cache with fixed-size capacity and random or least recently used (LRU) replacement.2,309,166MIT OR Apache-2.0
ocaml-boxroot-sysBoxroot for OCaml: fast movable GC roots (C API)2,308,167MIT
owned-allocA crate to help reducing manual memory management errors.2,099,509MIT
pin-weakSmall wrapper around an equivalent of Pin<Weak<T>>2,016,876MIT
rlsfReal-time dynamic memory allocator based on the TLSF algorithm1,691,190MIT/Apache-2.0
conquer-onceSynchronization primitives for lazy and one-time initialization1,627,778MIT/Apache-2.0
shuffling-allocatorA shuffling allocator, randomizing heap object locations; useful for avoiding accidental cache locality during benchmarking,…1,532,025MPL-2.0
alloc-traitsTraits to replace or supplement the alloc module in no_std1,481,354MIT
mmap-syncA Rust package allowing sharing of data between processes in a wait-free and zero-copy fashion from mapped memory.1,461,159Apache-2.0
without-allocReplacements for `Box`, `Rc`, `Vec`, .. without `alloc`1,429,269MIT
strck_identChecked owned and borrowed Unicode-based identifiers1,416,170MIT
include_bytes_alignedA simple macro that embeds the bytes of an external file into the executable and guarantees that they are aligned.1,296,418MIT
reference-counted-singletonReference-counted singleton whose protected data can be recreated as needed1,284,370MIT
flexstrA flexible, simple to use, clone-efficient string type for Rust1,253,278MIT OR Apache-2.0
hipstrYet another string for Rust: zero-cost borrow and slicing,
inline representation for small strings, (atomic) reference…1,171,112MIT OR Apache-2.0
ra_ap_la-arenaSimple index-based arena without deletion.1,168,935MIT OR Apache-2.0
talcA fast and flexible allocator for no_std and WebAssembly1,145,591MIT
tiny-fnType erased closures on stack1,140,080MIT OR Apache-2.0
disposeA simple wrapper for values that must be consumed on drop.1,060,375MIT OR Apache-2.0
dispose-deriveDerive macro for the dispose crate.1,059,877MIT OR Apache-2.0
bbqueueA SPSC, lockless, no_std, thread safe, queue, based on BipBuffers1,034,702MIT OR Apache-2.0
slabbinAn efficient slab allocator with stable addresses951,452MIT OR Apache-2.0
static-allocA bump allocator on static memory for the alloc-traits crate935,231MIT OR Apache-2.0 OR Zlib
filebufferFast and simple file reading923,681Apache-2.0
stable-vecA Vec-like collection which guarantees stable indices and features O(1)
element deletion (semantically similar to…907,963MIT/Apache-2.0
refpoolEfficient memory pool with reference counting895,262MPL-2.0+
jrsonnet-gcmoduleCyclic garbage collection inspired by CPython's gc implementation.877,513MIT
bufsizebytes::BufMut implementation to count buffer size877,389MIT OR Apache-2.0
esp-allocA heap allocator for Espressif devices785,479MIT OR Apache-2.0
size-ofA crate for measuring the total memory usage of an object730,598MIT OR Apache-2.0
peak_allocAn allocator to keep track of (the max) allocated memory728,005MIT
stacksafe-macroProcedural macro implementation for the stacksafe crate.689,438Apache-2.0
stacksafePrevent stack overflow in deeply recursive functions with automatic stack management.689,179Apache-2.0
thin-dstThin pointers to inline-slice dynamically sized types686,918MIT OR Apache-2.0
concreadConcurrently Readable Data-Structures for Rust681,539MPL-2.0
mallocedA malloc-ed box pointer type.648,395MIT OR Apache-2.0
binary-layoutThe binary-layout library allows type-safe, inplace, zero-copy access to structured binary data. You define a custom data layout…604,283MIT OR Apache-2.0
reusable-box-futureA reusable `Pin<Box<dyn Future<Output = T> + Send>>`590,346MIT
tor-memquotaMemory use tracking and quota utilities, used by Tor software562,293MIT OR Apache-2.0
gpu-alloc-ash`ash` backend for `gpu-alloc`557,935MIT OR Apache-2.0
mimalloc-safePerformance and security oriented drop-in allocator525,295MIT
libmimalloc-sys2Sys crate wrapping the mimalloc allocator519,824MIT
rpmalloc-sysUnsafe FFI bindings to rpmalloc C library494,869MIT OR Apache-2.0
rpmallocCross-platform global memory allocator using rpmalloc484,293MIT OR Apache-2.0
primordialLow-level CPU primitives470,241Apache-2.0
handyA library providing handles and handlemaps469,605Apache-2.0 / MIT
databakeTrait that lets structs represent themselves as (const) Rust expressions456,056Unicode-3.0
databake-deriveCustom derive for the databake crate450,106Unicode-3.0
atomic-poolStatically allocated pool providing a std-like Box.440,032MIT OR Apache-2.0
checkersA sanity checker for global allocations.436,687MIT OR Apache-2.0
bincode_derive-nextProcedural macros for bincode-next: high-performance derive macros for Encode, Decode, ZeroCopy, and more.432,621MIT or Apache-2.0
checkers-macrosMacros for checkers, a sanity checker for global allocations.421,075MIT/Apache-2.0
bounded-staticDefines the ToBoundedStatic and IntoBoundedStatic traits408,972Apache-2.0
indexedConvenient allocator for index-linked data structures408,121MIT
qcellStatically-checked alternatives to RefCell and RwLock406,771MIT/Apache-2.0
second-stackA fast allocator for short-lived slices and large values.405,116MIT
thin-cellA compact, single-threaded smart pointer combining reference counting and interior mutability401,171MIT
colosseumA variety of arena allocators for Rust, including thread-safe arenas.386,000MIT/Apache-2.0
aarcAn atomically updatable Arc for lock-free concurrency.381,303MIT
bounded-static-deriveMacro to derive ToBoundedStatic and IntoBoundedStatic traits377,055Apache-2.0
hwlocality-sysLow-level bindings for the hwloc hardware locality library355,753MIT
ref_thread_localA macro for declaring thread-local `static`s like using both of `lazy_static!` and `RefCell`354,513MIT
lazy-static-includeThis crate provides `lazy_static_include_bytes` and `lazy_static_include_str` macros to replace `include_bytes` and `include_str`…354,009MIT
deepsize_derive2A crate for measuring the total size of object on the stack and heap333,956MIT
deepsize2A crate for measuring the total size of object on the stack and heap333,511MIT
compact_bytesA memory efficient bytes container that transparently stores bytes on the stack, when possible333,037MIT/Apache-2.0
hwlocalityIdiomatic Rust bindings for the hwloc hardware locality library329,132MIT
fmmapA flexible and convenient high-level mmap for zero-copy file I/O.321,049MIT OR Apache-2.0
mappable-rcProvides mappable reference counted types315,651MIT OR Apache-2.0
generic_singletonA library crate allowing for generic singleton patterns309,534MIT OR Apache-2.0
wdk-allocalloc support for binaries compiled with the Windows Development Kit (WDK)273,093MIT OR Apache-2.0
seckeyUse `memsec` protected secret memory.271,073MIT
malignedA memory alignment library265,141MIT OR Apache-2.0
shared_memory_extendedA user friendly crate that allows you to share memory between processes262,228MIT OR Apache-2.0
bump-scopeA fast bump allocator that supports allocation scopes / checkpoints. Aka an arena for values of arbitrary types.261,815MIT OR Apache-2.0
typed-arena-nomutThe arena, a fast but limited type of allocator261,696MIT
bumpalo-herdSupport for bumpalo in scoped threads & rayon247,115MIT OR Apache-2.0
rent_to_ownA wrapper type for optionally giving up ownership of the underlying value.238,696Apache-2.0/MIT
fast-smrToward fast, wait-free, portable, and robust memory reclamation.233,238MIT
tcmallocDrop-in global allocator using tcmalloc221,315MIT/Apache-2.0
volatile-memA library for managing volatile memory213,024Apache-2.0
allocation-counterCount the number of memory allocation of some code.213,002MIT/Apache-2.0
tracking-allocatorglobal allocator that provides hooks for tracking allocation events207,094MPL-2.0
alloc_counterCount allocations, reallocations, deallocations. Allow, deny, or forbid allocations on an expression or function basis.192,379MIT OR Apache-2.0
relrcReference counted pointers, with relationships to other pointers.187,476Apache-2.0
cache-sizeA library for finding your L1/L2/L3 cache sizes185,200BSD-3-Clause
hashconsingA hash consing library.181,070MIT/Apache-2.0
nonzero_signedDEPRECATED
Rust's std lib has stabilized their own signed NonZero types in Rust 1.34, please
use those instead if you're using…177,291MIT/Apache-2.0
lol_alloclol_alloc: A laughably simple wasm global_allocator.176,982MIT
recastingtraits for one-to-one recasting of values in data structures175,099MIT OR Apache-2.0
nunnythe definitive non-empty slice/array/vec library for Rust170,151MIT OR Apache-2.0
tikv-jemallocator-globalSets `jemalloc` as the `#[global_allocator]`168,541MIT/Apache-2.0
generic_once_cellA bring-your-own-mutex version of once_cell.167,737MIT OR Apache-2.0
memory_addrWrappers and helper functions for physical and virtual addresses166,696GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
exclusive_cellA thread-safe, non-blocking, no-std cell that can only be accessed once.164,129MIT OR Apache-2.0
boow`Borrow Or oWned` smart pointer. Alternative to Cow.156,565MIT
tcmalloc-sysDrop-in global allocator using tcmalloc155,465MIT/Apache-2.0
keyviKeyvi - the key value index. It is an in-memory FST-based data structure highly optimized for size and lookup performance.152,062Apache-2.0
take-staticStatic items that provide mutable access only once.149,313MIT OR Apache-2.0
blink-allocFast, concurrent, arena-based allocator with drop support143,227MIT OR Apache-2.0
mortonMorton space filling curve functions141,708MIT
opoolHigh-performance, lock-free local and concurrent object pool with automated allocation, cleanup, and verification.139,828MIT
effective-limitsEstimate effective resource limits for a process e.g. how much RAM is available for use.139,185Apache-2.0
memory_addressesUnified virtual and physical address types for the Hermit ecosystem and beyond138,496MIT/Apache-2.0
hurdlesCounter-based thread barrier130,992MIT/Apache-2.0
page_table_entryPage table entry definition for various hardware architectures129,386GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
near-rust-allocator-proxyRust allocator proxy with added header124,752Apache-2.0
once_cell_serdeSingle assignment cells and lazy values.121,709MIT OR Apache-2.0
slotmap_fork_lmondadaSlotmap data structure120,909Zlib
triple_arenaRegular, Chain, Surjection, and Ordered Arenas supporting non-Clone types, deletion, and more115,664MIT OR Apache-2.0
membarrierProcess-wide memory barrier115,006MIT/Apache-2.0
malloc-infoA safe wrapper around glibc's malloc_info112,923MIT OR Apache-2.0
endian-type-rsType safe wrappers for types with a defined byte order112,775MIT
fortifyA simple and convenient way to bundle owned data with a borrowing type111,385MIT OR Apache-2.0
bitmap-allocatorBit allocator based on segment tree algorithm.111,190Apache-2.0
fdt-rsA flattened device tree parser for embedded no-std environments110,158MIT
aligned-cmovFast constant-time conditional moves of aligned bytes110,062GPL-3.0