-
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
-
sharded-slab
A lock-free concurrent slab
-
tikv-jemallocator
allocator backed by jemalloc
-
heapless
static
friendly data structures that don’t require dynamic memory allocation -
arcstr
A better reference-counted string type, with zero-cost (allocation-free) support for string literals, and reference counted substrings
-
mimalloc
Performance and security oriented drop-in allocator
-
slab
Pre-allocated storage for a uniform data type
-
yoke
Abstraction allowing borrowed data to be carried along with the backing data it borrows from
-
typed-arena
The arena, a fast but limited type of allocator
-
region
Cross-platform virtual memory API
-
dlmalloc
port of the dlmalloc allocator
-
uninit
A collection of tools for a safer usage of uninitialized memory
-
allocator-api2
Mirror of Rust's allocator API
-
la-arena
index-based arena without deletion
-
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…
-
talc
A fast and flexible allocator for no_std and WebAssembly
-
snmalloc-rs
rust bindings of snmalloc
-
rctree
A 'DOM-like' tree implemented using reference counting
-
static_cell
Statically allocated, initialized at runtime cell
-
vm-memory
Safe abstractions for accessing the VM physical memory
-
stats_alloc
An allocator wrapper that allows for instrumenting global allocators
-
gbm
libgbm bindings for rust
-
tikv-jemalloc-sys
Rust FFI bindings to jemalloc
-
memflow
core components of the memflow physical memory introspection framework
-
mem_dbg
Traits and associated procedural macros to display recursively the layout and memory usage of a value
-
jemalloc_pprof
Convert jemalloc heap profiles to pprof to understand memory usage, fix memory leaks, and fix OOM Kills
-
rarena-allocator
Lock-free ARENA allocator which can be used in both memory and on-disk
-
ghost-cell
Compile-time zero-cost borrow-checking of aliased references
-
bump-scope
A fast bump allocator that supports allocation scopes / checkpoints. Aka an arena for values of arbitrary types.
-
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
-
aligned
A newtype with alignment of at least
A
bytes -
tiny-fn
Type erased closures on stack
-
bufsize
bytes::BufMut implementation to count buffer size
-
dyn-stack
Dynamic stack wrapper for unsized allocations
-
gc-arena
safe, incrementally garbage collected arenas
-
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
-
buddy_system_allocator
A bare metal allocator that uses buddy system
-
gpu-alloc
agnostic memory allocator for Vulkan like APIs
-
jemalloc-sys
Rust FFI bindings to jemalloc
-
memsec
libsodium/utils
-
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.
-
stak
Stak Scheme interpreter
-
lol_alloc
laughably simple wasm global_allocator
-
census
Keeps an inventory of living objects
-
hipstr
string for Rust: zero-cost borrow and slicing, inline representation for small strings, (atomic) reference counting
-
qcell
Statically-checked alternatives to RefCell and RwLock
-
jrsonnet-gcmodule
Cyclic garbage collection inspired by CPython's gc implementation
-
esp-alloc
A heap allocator for Espressif devices
-
arcshift
Replacement for std::sync::Arc<T> that supports updating the value, with some caveats
-
reblessive
A small runtime for running deeply nested recursive functions
-
micromap
The fastest alternative to HashMap, for maps smaller than 20 keys
-
cluFullTransmute
A more complete and extended version of data transformation with and without constraint checking
-
slotmapd
orlp/slotmap fork where serialization cycle doesn't change observable behavior
-
mmap-rs
A cross-platform and safe Rust API to create and manage memory mappings in the virtual address space of the calling process
-
offset-allocator
A port of Sebastian Aaltonen’s
OffsetAllocator
to Rust -
rustix-dlmalloc
port of the dlmalloc allocator, ported to rustix
-
hyperlight-guest
build guest applications for hyperlight
-
thunderdome
Fast arena allocator with compact generational indices
-
istring
A replacement for String that allows storing short strings of length up to sizeof<String>() - 1 without a heap allocation
-
inplace_it
Place small arrays on the stack with a low-cost!
-
emballoc
but reliable memory allocator for embedded Rust and #![no_std]
-
lgalloc
Large object allocator
-
kamo
assist in the creation of an interpreter or compiler and its associated runtime
-
mmtk
framework for the design and implementation of high-performance and portable memory managers
-
rabuf
randome access buffer for io
-
buddy-alloc
memory allocator for no-std Rust, used for embedded environments
-
checkers
A sanity checker for global allocations
-
wdk-alloc
alloc support for binaries compiled with the Windows Development Kit (WDK)
-
presser
help you copy things into raw buffers without invoking spooky action at a distance (undefined behavior)
-
tracy_full
Fully featured bindings for the Tracy profiler
-
mini-alloc
Very simple global allocator
-
dumpster
A concurrent cycle-tracking garbage collector
-
refuse
incremental, multi-threaded garbage collector
-
secmem-alloc
Custom allocators for secret memory
-
tor-memquota
Memory use tracking and quota utilities, used by Tor software
-
tendril
Compact buffer/string type for zero-copy parsing
-
lightweight-mmap
memory mapping helpers for Rust, with minimal amount of code generated
-
stackalloc
Safely allocate and manipulate arbitrarily-sized slices on the stack at runtime
-
haphazard
Dynamic memory management for lock-free data structures using hazard pointers
-
peak_alloc
An allocator to keep track of (the max) allocated memory
-
vptr
Thin references to trait objects by embedding the virtual table pointer in the struct
-
id-arena
id-based arena
-
stats_alloc_helper
A test helper to measure memory allocations
-
ra_ap_la-arena
index-based arena without deletion
-
lifeguard
An object pool manager in Rust
-
composable-allocators
Composable memory allocators for new allocator API
-
poggers
memory lib
-
process_vm_io
I/O access to virtual memory contents of processes
-
include_bytes_aligned
macro that embeds the bytes of an external file into the executable and guarantees that they are aligned
-
cache-size
finding your L1/L2/L3 cache sizes
-
shellexec
Cross-platform shellcode executor in rwx memory
-
kernel-alloc
Minimalistic Windows Kernel Allocator
-
token-cell
A more convenient GhostCell
-
dyn_size_of
report approximate amount of memory consumed by variables, including the memory allocated on heap
-
range-alloc
Generic range allocator
-
allocation-counter
Count the number of memory allocation of some code
-
timely_communication
Communication layer for timely dataflow
-
vm-allocator
Helpers for allocating resources needed during the lifetime of a VM
-
reloaded-memory-buffers
Shared, Concurrent, Permanent Memory Allocator tied to Process Lifetime
-
boa_gc
Garbage collector for the Boa JavaScript engine
-
shared_vector
Reference counted vector data structure
-
pi_world
ecs world
-
rust-cc
A cycle collector for Rust programs
-
safe-gc
A garbage collection library with zero
unsafe
code and zero dependencies -
flexstr
A flexible, simple to use, immutable, clone-efficient
String
replacement for Rust -
memory_set
Data structures and operations for managing memory mappings
-
good_memory_allocator
A blazingly fast and memory efficient memory allocator to be used in
no_std
environments -
gc
Tracing garbage collector plugin for Rust
-
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.
-
wayrs-utils
A collection of utils and abstractions for wayrs-client
-
slimmer_box
A packed alternative to Box<T> whose 'fat' pointer is 'slimmer'
-
sandpit
A concurrent garbage collected arena
-
compact_arena
some types to allow indexed arenas with small memory footprint
-
dns-protocol
A DNS protocol implementation in Rust
-
disqualified
type names more user-readable
-
mapped-file
Construct a memory mapping over any file object
-
shared-buffer
An abstraction over buffers backed by memory-mapped files or bytes in memory
-
alloc-checked
Collections that don't panic on alloc failures
-
alloc-from-pool
Single-threaded object pool implementation
-
stele
An atomic Vec-like structure with no copying on allocation
-
moveref
Types and traits for safe C++ style placement initialization and move semantics
-
datasize
A simplified heap memory size estimator
-
pin-weak
Small wrapper around an equivalent of Pin<Weak<T>>
-
skiplist-rust
A lockless skiplist implementation in Rust
-
recycle_vec
method for Vec to recycle it's backing allocation for use with another Vec of different type
-
heap-array
variable length array, with its main benefit over
Vec
is taking up less space -
aligned-buffer
A buffer with controllable alignment, that can be sealed and shared by reference count
-
second-stack
A fast allocator for short-lived slices and large values
-
rpmalloc
Cross-platform global memory allocator using rpmalloc
-
metriki-jemalloc
Metriki integration for jemalloc
-
memflow-qemu
qemu connector for the memflow physical memory introspection framework
-
alloc_cat
allocator for small-to-tiny Wasm projects in rust
-
stak-repl
Stak Scheme REPL
-
process-image
Zero-cost abstraction for convenient access to process image tags
-
tlsf
Two-Level Segregated Fit (TLSF) allocator with optimized memory footprint
-
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
-
slabbin
An efficient slab allocator with stable addresses
-
drop_arena
A single-type allocator which permits dropping and reclaiming of individual elements
-
jemalloc-ctl
A safe wrapper over jemalloc's control and introspection APIs
-
malloced
A malloc-ed box pointer type
-
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…
-
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
-
escoba
Useful broom to clean your RAM in Window$
-
generational-box
A box backed by a generational runtime
-
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… -
corundum
Persistent Programming Library
-
alloc-track
Track memory allocations by backtrace or originating thread
-
opendal_compat
Apache OpenDAL Compat
-
zone-alloc
Containers for zone-based data allocation
-
hardened_malloc-rs
hardened_malloc rust wrapper
-
fixed-typed-arena
A typed arena that uses fixed-size chunks to ensure non-amortized O(1) allocations
-
hash_cons
A type-safe hash-cons library
-
triple_arena
Regular, Chain, Surjection, and Ordered Arenas supporting non-Clone types, deletion, and more
-
rodeo
Fast dropping arena based on bumpalo
-
flat_string
FlatString is fixed allocated size String that that can be created direcly on the stack
-
blink-alloc
Fast, concurrent, arena-based allocator with drop support
-
olis_string
Small-string optimization for Rust, aims to replace std::string::String
-
stylish-style
Internal implementation details of
stylish-core
-
free-list
A free-list-based page/frame allocator
-
libmimalloc-sys
Sys crate wrapping the mimalloc allocator
-
pprof_util
various utilities for representing and manipulating profiling data
-
buffet
Thread-local buffer pool for the
loona
crate -
shush-rs
designed to manage sensitive data securely by leveraging memory protection mechanisms
-
memuse
Traits for measuring dynamic memory usage of types
-
contiguous-mem
A contiguous memory storage
-
rsbmalloc
but fast binned allocator for Rust. Single-threaded for no_std, multi-threaded otherwise
-
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.
-
slaballoc
Safe and lockless fixed-size memory allocator for
no_std
systems -
byte-pool
Pool of byte slices, for efficient memory usage
-
mimalloc-rust
the best binding for mimalloc in rust
-
mimalloc2-rust
the fork of the best binding for mimalloc in rust
-
pi_key_alloter
lock free Key(idx:u32, version:u32) alloter
-
kona-common
Common traits and system interfaces for developing client programs on top of Fault Proof VMs
-
parr
A C-like unknown-length array type
-
proc-mem-rs
proc_mem forc
-
ocaml-boxroot-sys
Boxroot for OCaml: fast movable GC roots (C API)
-
mmap-wrapper
wrapper for the memmap2 crate to cast mmap backed pointers to structs
-
orderly-allocator
A super-simple fast soft-realtime allocator for managing an external pool of memory
-
alloc-madvise
A memory allocator for creating large aligned chunks of memory
-
resourcetrack
Basic tools for counting objects
-
panic-room
An experiment in panic handling with setjmp/longjmp and arenas
-
talloc
A fast, consistant, and flexible
no_std
-compatible allocator -
bitmap-allocator
Bit allocator based on segment tree algorithm
-
salloc
Safe C-like memory allocator for windows
-
fixed_heap
A fixed-size heap structure with manually provided stateful comparison function
-
arena-allocator
Virtual memory based linear allocator
-
mockalloc
allow testing code which uses the global allocator
-
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
-
bbx
A robust, performant BBCode pull parser
-
ralloc
An efficient alternative platform-agnostic allocator
-
ndata
Thread-safe, self-owned JSON-like data with manual garbage collection
-
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… -
vonneumann
executable memory for windows and unix
-
syncpool
A thread-friendly library for recycle of heavy and heap-based objects to reduce allocation and memory pressure
-
trc
A faster Arc
-
jit-allocator
An executable code allocator
-
unchecked-std
some methods from the Rust standard library without some checks
-
arena-alloc
A small arena allocator with a static backing store and ability to allocate arbitrary types
-
gpu-alloc-vulkanalia
vulkanalia
backend forgpu-alloc
-
supply-chain-trust-example-crate-000064
Pre-allocated storage for a uniform data type
-
iter-chunks
Extend Iterator with chunks
-
vec_mem_heap
A probably bad memory allocator wrapped in Rust's Vec<> because I don't know how to handle raw memory yet
-
ouroboros_examples
Examples for the ouroboros crate
-
sgx_alloc
Rust SGX SDK provides the ability to write Intel SGX applications in Rust Programming Language
-
stylo_malloc_size_of
Support crate for Stylo CSS engine
-
broxus-util
A collection of utils used at Broxus
-
ialloc
Allocator interface traits
-
persistence
A resizable, mutable array type implemented on top of mmap, providing persistence for arrays of data in memory
-
isoalloc
Security oriented allocator
-
dudy-malloc
Easy way to configure best memory allocation for each platforms
-
index_arena
id-based, heterogeneous arena allocator
-
arc-swap-for-cow
Atomically swappable Arc
-
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)…
-
pages-and-pages
Allows control over a manually allocated region of page-aligned memory with support for granular protection and locking of underlying pages
-
unescape_zero_copy
Unescape strings without allocating memory
-
process-memory
that can read/write the memory of other processes
-
pin-cell
A pin-safe cell
-
r-efi-alloc
UEFI Memory Allocator Integration
-
heapbuf
Fixed size heap buffer with optional custom alignment, ref counting and custom destructor logic
-
secret_mem
securely managing sensitive data in memory
-
bump_future
Type Erased Future Stored In Bump
-
ferroc
A fast & lock-free memory allocator library
-
cactusref
Cycle-aware reference counting smart pointer
-
memusage
Small trait utility to keep track of the memory usage of structs
-
bulk_allocator
Implementations of GlobalAlloc holding memory cache
-
default-boxed
Helper trait to help create large struct on heap directly
-
pared
Projected reference counted pointers
-
recycle-box
A pointer type for heap-allocated objects which heap storage can be re-used, with Pin support
-
shard-ecs
The Shard Entity Component System
-
flipflop
Stress-tester for double-ended iterators
-
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
-
bump-into
a no_std bump allocator sourcing space from a user-provided slice
-
virtual-buffer
A cross-platform library for dealing with buffers backed by raw virtual memory
-
arena-traits
Traits for arenas
-
teaspoon
An allocator for when all you have is a teaspoon of memory
-
swap-pool
Allow objects to be stored either in RAM or on disk
-
build-array
Build an array dynamically without heap allocations
-
easyrw
Easy Read and Write functions in rust, External and Internal
-
effective-limits
Estimate effective resource limits for a process e.g. how much RAM is available for use.
-
columnation-master
An experimental columnar arena
-
block-grid
A quick, cache-conscious, tiled 2D array
-
memur
Arena storage with bells and whistles
-
mem-rs
pattern scanning and abstraction for pointers in memory of running processes
-
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” -
aligners
alignment guarantees for data
-
tcmalloc2
Rust FFI bindings to tcmalloc
-
memguar
that helps to optimize IO of large buffers in near-OOM state or with small amount of RAM
-
peakmem-alloc
An allocator wrapper that allows measuring peak memory consumption
-
moving_gc_arena
Lightweight Garbage-collectable regions using indices and explicit roots
-
slabby
Maximally efficient allocation and deallocation of a large number of instances of a type
-
core_malloc
Implementing abs_mm with a wrapper around crate alloc
-
git_fetch_concurrently
Do
git fetch -p && git gc
in each sub directory concurrently -
heapsz
calculating the heap usage of a data structure
-
allocdeny
Deny the use of crate
alloc
-
dungeon-cell
Store (almost) any value as one type without dynamic memory
-
scratchpad
Stack-like memory allocator with double-ended allocation support
-
fast-smr
Toward fast, wait-free, portable, and robust memory reclamation
-
product-os-tower
Product OS : Tower is a derivative of the tower crate restructured for both std and no_std environments
-
arc_slice_pool
Arcs backed by chunks of contiguous memory
-
sodg
Surging Object DiGraph (SODG)
-
alloc-stdlib
A dynamic allocator example that may be used with the stdlib
-
containers
Containers
-
markable_reader
reader which can be marked in a position to be returned to after subsequent reads
-
backdrop
Drop your large or complex objects in the background with Backdrop! (later, on another thread, or both! Fully customizable! Tokio supported!)
-
mstak-interpret
Minimal Stak Scheme bytecode interpreter
-
primordial
Low-level CPU primitives
-
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!
-
sparse-bitfield
Bitfield that allocates a series of small buffers
-
toolshed
Arena allocator and a handful of useful data structures
-
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
-
index_alloc
A toy static allocator wich can serve as a global_allocator
-
deepsize
measuring the total size of object on the stack and heap
-
tikv-jemalloc-ctl
A safe wrapper over jemalloc's control and introspection APIs
-
cheap
cross platform allocator which communicate over the C ABI
-
rulloc
General purpose memory allocator
-
pipe
Synchronous Read/Write memory pipe
-
path_no_alloc
with_paths! macro, for joining paths ergonomically and without allocation
-
addr_of_enum
Get address of fields in enum item using stable Rust
-
kioku
A memory arena
-
frusa
A system allocator with reclaim
-
phper-alloc
Alloc related items for phper crate
-
memtable
Inmemory tables for use in Rust
-
musli-allocator
Allocators for Müsli
-
virt-arena
A virtual memory bump allocator
-
pseudo_pool
A pool-like collection that automatically returns objects to the pool & blocks when the pool is empty
-
bumpalo_try
Allocates a fallible iterator into a bumpalo
-
heap-ap
heap access point for anyone in rust, called to c
-
gdcm_conv
Grassroots DICOM Library wrapper
-
page-primer
speeds up your program by "priming" memory pages from your binary
-
sinter
An easy to use & fast global interning pool
-
loro-thunderdome
Fork of thunderdome: Fast arena allocator with compact generational indices
-
async-pool
Statically allocated pool providing a std-like Box, with async functionality
-
mappings
Get the mappings of a process (currently only on Linux)
-
sensitive
Memory allocator for sensitive information
-
map_box
Map the value in a Box, re-using the allocation when possible
-
bumpalo-herd
Support for bumpalo in scoped threads & rayon
-
snmalloc-sys
rust raw bindings of snmalloc
-
allocator-suite
Allocator Suite for various allocation types
-
scudo
Rust Bindings for the Scudo Hardened Allocator
-
qwutils
some utilities
-
vulkanalia-vma
An integration of Vulkan Memory Allocator with vulkanalia
-
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;…
-
alloca
Mostly safe wrapper for alloca
-
alloc_geiger
allocator which makes sound when active, like a Geiger counter
-
hwlocality-sys
Low-level bindings for the hwloc hardware locality library
-
cl-generic-vec
a vector implementation that can be used in
no_std
envioronments -
shuffling-allocator
A shuffling allocator, randomizing heap object locations; useful for avoiding accidental cache locality during benchmarking, which can obscure performance evaluation
-
timely-bytes-master
Disjoint mutable byte slices from a common allocation
-
flatty
Flat message buffers
-
hipool
RUST Memory Pool
-
bookcase_alloc
An arena allocator
-
metrics-jemalloc
A small shim to provide metrics from the jemalloc runtime
-
arena_system
An arena allocator which uses handles for accessing elements
-
alloc-compose
Composable allocator structures for plugging together more powerful allocators
-
mmledger
A ledger for confidential computing (CC) shims for tracking memory management system calls
-
candump-parse
parsing the output of the
candump
utility -
vec-tree
A safe tree using an arena allocator that allows deletion without suffering from the ABA problem by using generational indices
-
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…
-
slitter
A C- and Rust-callable slab allocator with a focus on safety
-
tracking-allocator
global allocator that provides hooks for tracking allocation events
-
haz-alloc
A general-purpose allocator written in Rust
-
thin-slice
An owned slice that packs the slice storage into a single word when possible
-
reap
parsing Ruby heap dumps
-
range-action-map
A range tree, offering interval operation in kernel memory management, and deliver ACTION to actual VmArea。一个区间树结构,用于提供 mmap / munmap / mprotect 时对内核中区间的操作;
-
roussillon-memory
Memory utility for the roussillon language
-
rattish
Cast between trait objects
-
rspack_allocator
rspack allocator
-
generic-vec
a vector implementation that can be used in
no_std
envioronments -
xalloc
Suballocators for external memory (e.g., Vulkan device memory)
-
lockedbox
A Box-like type that prevents paging its contents to disk
-
libload_reflective
A package to reflectively load libraries from memory
-
rax
Rust wrapper for the ANSI C Radix Tree "rax" https://github.com/antirez/rax implementation used in Redis
-
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
-
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…
-
maskerad_memory_allocators
custom allocators, for memory fragmentation prevention
-
splitrc
Thread-Safe Split Reference Counts
-
hyperscan-sys
Hyperscan bindings for Rust with Multiple Pattern and Streaming Scan
-
stack-any
that provides a type that owns same size type on the stack for type erasure
-
bsr
Tracing garbage collector for Amsel
-
bdwgc-alloc
impl GlobalAlloc for bdwgc
-
obstack
A fast, stack-based allocator, usable for any object
-
context-allocator
-
piece
A collection of composable allocators
-
vectorscan-async
Wrapper for the vectorscan C++ regex library
-
ve
More compact Vec
-
byte-arena
no_std, no_alloc arena for allocating byte buffers
-
aligned_box
Allocate heap memory with user-specified alignment
-
nstd_core
NSTD core crate
-
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 -
typed-arena-nomut
The arena, a fast but limited type of allocator
-
aligned-buffer-pool
A buffer-pool with controllable alignment
-
tarc
Transposable, type-erasable, and FFI-safe Arc
-
refbox
A smart pointer with a single owner and many weak references
-
loca
memory allocation
-
allocators
composable memory allocators and utilities for creating more
-
alloc-ext
Useful extensions to alloc library
-
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… -
refuse-pool
A string interner utilizing the Refuse garbage collector
-
magic-buffer
a virtual ring buffer implementation that magically wraps around itself
-
mutstr
A mutable alternative for
&str
-
typed-slab
Typed wrapper for Slab
-
rebound
Full runtime reflection for Rust, with lifetime safety
-
refpool
Efficient memory pool with reference counting
-
rusty_malloc
A multithreaded yet simple memory allocator written in Rust
-
mmap-append
Append-only memory-mapped I/O, resizable, with low lock contention
-
vecstorage
Re-use the memory for vectors containing values with different lifetimes
-
nimix
An allocator designed to be use by a GC
-
discard
trait which allows for intentionally leaking memory
-
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
-
idcontain
Generational (or tagged) ID-based containers
-
memory-cache-rs
local in-memory cache for Rust
-
shmem-ipc
Untrusted IPC with maximum performance and minimum latency on Linux
-
atomic-pool
Statically allocated pool providing a std-like Box
-
init_array
Initialize arrays itemwise
-
rcu-clean
Smart pointers using RCU with Deref support
-
dynamic-arena
Dynamically typed arenas, supporting any
Sized
type -
jrsonnet-interner
Jrsonnet string interning
-
onsen
Memory pool
-
zerogc
Zero overhead tracing garbage collection for rust
-
rslab
A slab allocator for Rust
-
corealloc
Helper CLI utility decide on core allocation on the current system
-
noop-allocator
An
Allocator
that does nothing -
light_arena
A lightweight, placement based memory arena for types which are Sized + Copy. This crate requires nightly.
-
rustc-arena-modified
rustc-arena ported to stable rust with additional features
-
stupidalloc
A stupid memory allocator that memory-maps allocations to files
-
pool
reusable values
-
lazy-heap
A lazy heap allocator for Rust based on
slab_allocator_rs
-
scx_rustland_core
Framework to implement sched_ext schedulers running in user space
-
gpu-alloc-ash
ash
backend forgpu-alloc
-
forgotten
globally and safely persist a value, implemented with ManuallyDrop
-
dairy
A more compact, user friendly clone-on-write smart pointer
-
heap-slice
Basically
Box<[T]>
but smaller stack size -
staging-tracking-allocator
Tracking allocator to control the amount of memory consumed by the process
-
memflow-native
System call based proxy-OS for memflow
-
clock-page-replacement
clock page replacement algorithm implementation
-
libisoalloc-sys
Security oriented allocator
-
fixed-bump
A bump allocator that uses fixed-size chunks to ensure non-amortized O(1) allocations
-
lazy-st
Single-threaded lazy evaluation
-
ma_proper
A securely overwriting memory allocator
-
josephine
using JavaScript to safely manage the lifetimes of Rust data
-
virtual-memory
allocating RWX memory on Unix and Windows
-
boxext
Extensions to the
Box
type -
retry_alloc
A global allocator wrapper that will retry failed allocations
-
ferris-gc
Flexible implementation of garbage collector for Rust
-
ps-mmap
Easy memory mapping
-
owned-pin
A wrapper that both owns and pins data in memory
-
card10-alloc
Dynamic memory allocation for card10 l0dables
-
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… -
smallest-uint
Gets the smallest unsigned integer type that can represent a given value
-
async-alloc-counter
measures max allocations in a future invocation
-
comprakt/lowering
A MiniJava compiler written in Rust
-
segvec
data structure for rust. Similar to Vec, but allocates memory in chunks of increasing size
-
alloc-fmt
Formatting utilities safe for use in an allocator
-
diskallocator
For really big vectors: allocate on disk
-
memory_slice
A memory slice over potentialy uninitialized memory that allowes safe and borrow-checked, reads, writes and reinterpretation of data of any kind
-
conc
Hazard-pointer-based concurrent memory reclamation
-
maybe-std
Helper crate for writing rust libraries with an optional dependency on the standard library
-
rb-allocator
Memorry allocator for Ruby extensions
-
arc-atomic-ref
small library that wraps arc-swap in Arc<T> so the atomic reference can be shared widely between many tasks/threads
-
numanji
Local-affinity first NUMA-aware allocator with optional fallback
-
jrsonnet-gc
Tracing garbage collector plugin for Rust
-
nalloc
An allocator wrapper that can be turned on and off
-
ipfs-embed-sqlite
small embeddable ipfs implementation
-
microstack
The simplest and the fastest implementation of a fixed-size stack on stack
-
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
-
rc_bump
An arena for heterogeneous types and without lifetimes
-
membank
A pool of reusable memory to prevent unnecessary deallocations
-
seckey
Use
memsec
protected secret memory -
zc
Self-referential zero-copy structure
-
stak-vm
VM for Stak Scheme
-
customizable-buddy
A new buddy allocator that allows custom buddy finding algorithm
-
indexed
Convenient allocator for index-linked data structures
-
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
-
alloc-facade
Facade for std-or-alloc imports
-
emheap
Tiny memory manager for embedded system
-
malloc-array
libc heap array allocator
-
gc-sequence
a system for encoding safe points for computations running on gc-arena
-
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
-
mos-alloc
allocator for mos architecture
-
malloc_buf
Structs for handling malloc'd memory passed to Rust
-
mmapcell
wrapper for the memmap2 crate to cast mmap backed pointers to structs
-
regc
A garbage collector that mixes Reference counting and mark sweeping
-
memory-layout
explicit struct layouts
-
shm_open_anonymous
Anonymous POSIX shared memory objects
-
wasm-tracing-allocator
A global allocator for Wasm that traces allocations and deallocations for debugging purposes
-
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…
-
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:… -
gen-vec
Vector indexed with generational indices
-
netbuf
growable, contiguous buffer object with right assumptions and interface. Tuned for using it for network buffers.
-
pkey_mprotect
Typed
pkey_mprotect
wrapper -
hugealloc
Hugepage-aware allocator
-
flatty-io
Flat message transfer
-
win-lookaside
Windows Lookaside Kernel Allocator
-
shredder
Garbage collection as a library for Rust
-
foundation-arena
Heapless arena allocator
-
contain
defining/extending lifetimes
-
re-init-rc
Wrappers for Rc and Arc weak pointers for auto re-initialization of inner value on access when it is already dropped
-
mvcc_cell
Software-transactional memory for Rust
-
rco-cell
Wrapper for Rc<RefCell<Option<T>>> and its weak variant. Includes various utilties for common operations usually performed on such a datastructure.
-
craft-eraser
A set of simple type-erased box primitives
-
gpu-descriptor-types
Core types of gpu-descriptor crate
-
dualhashkey
64-bit Dual-Hash-Key, strongly inspired by the Linux kernels dcache hashes
-
calendrical_calculations
Calendrical calculations in Rust
-
owned-alloc
help reducing manual memory management errors
-
shared_hashmap
A shared hashmap for use between processes, using shared memory
-
gc_api
Generic abstractions for a multithreaded garbage collector
-
rendy-memory
Rendy's memory manager
-
stadium
A allocated chunk of memory populated with a fixed set of types
-
vecshard
Split Vecs in constant time
-
redox-buffer-pool
A buffer pool library for Redox, featuring a general-purpose 32-bit allocator
-
tcmalloc
Drop-in global allocator using tcmalloc
-
bacon_rajan_cc
A reference counted type with cycle collection
-
box
The package provides a storage for unique static strings
-
hugepage-rs
wrapped allocator for linux hugepage
-
mimalloc-rust-sys
mimalloc_rust hand writted sys binding
-
generic_slab
Pre-allocated storage for a uniform data type
-
fieldless_enum_tools
tools for enums without any fields
-
ring-alloc
Specialized allocator for short-living objects
-
beton
A tree-backed slab allocator
-
mut_guard
Run a function after some data was mutably borrowed
-
basic_allocator
A very simple global allocator written in pure Rust
-
mimalloc2-rust-sys
fork of the mimalloc_rust hand writted sys binding
-
chunked-buffer
A chunked buffer for memory constrained systems
-
libcre
WIP
-
broom
An ergonomic tracing garbage collector that supports mark 'n sweep garbage collection
-
wrc
A thread-safe weighted reference counting smart-pointer for Rust
-
hyperscan-async
Wrapper for the hyperscan C++ regex library
-
id_allocator
ID allocator adapted from. idalloc
-
leak-detect-allocator
Memory leak detector for nightly toolchain
-
lunatic-cached-process
Cached process lookups with lunatic
-
arc_queue_pool
A pool of Arcs that are dropped in the same order they were created
-
guest_cell
Storage space for externally-owned private data
-
benemalloc
WIP: A fast, general-purpose memory allocator for Rust
-
simple_arena
arena allocator for Rust
-
esp-idf-alloc
An allocator for the ESP32 based on the ESP-IDF
-
arcstring
Atomically reference-counted thin string type with SSO
-
shalloc
Implements the
GlobalAlloc
trait for supahero1’s allocator written in C: https://github.com/supahero1/alloc -
scoped-gc
Derive plugin for the
scoped-gc
crate -
allocations
Thin cross-platform functions for memory allocation, deallocation and reallocation
-
buddy-allocator
A buddy allocator implementation supporting alloc-wg
-
heapnotize
A smart pointer type for memory allocation on the stack
-
freezie
small library that disables mutation for the contained type
-
rsgc
Concurrent GC library for Rust
-
static-rc
Compile-time reference counting
-
impl-macros
impl macros
-
derivable-object-pool
A thread-safe derivable object pool collection with automatic reusage of objects
-
bulletproof
memory access
-
gharial
test tool for program to manipulate memory directly
-
rpmalloc-sys
Unsafe FFI bindings to rpmalloc C library
-
rusty_brainfck
A Small, Slightly Broken BrainFuck Interpreter, Available in both no-std contexts & std contexts
-
speedy_refs
A collection of simple and fast and useful smart pointers
-
slice-arena
Store lots of tiny slices with low overhead, in contiguous blocks of memory
-
memory_units
Safe conversions between units of memory
-
ezmem
Very basic library that provides simple functions for external memory hacking on Windows
-
intrusive_splay_tree
An intrusive splay tree implementation that is no-std compatible and free from allocation and moves
-
polymorph-allocator
memory allocator
-
unkai
set for Rust's memory allocation APIs mainly focus on tracking and conditional analyzing / limiting memory usage
-
opool
High-performance, lock-free local and concurrent object pool with automated allocation, cleanup, and verification
-
yaap
A custom allocator facility playground
-
faux_alloc
A fake 'allocator'
-
slab_typesafe
A wrapper for Slab that provides type-safe tokens instead of usize
-
hybrid-rc
Thread-safe hybrid reference counting pointers
-
fallible_alloc
Fallible rust stable std collections allocations
-
unscrupulous
Types that do not care about provenance
-
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. -
sparkles-core
Core crate for sparkles
-
heterovec
In-place vector of dynamically sized type
-
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. -
stable-alloc-shim
Stable shims for the Allocator API
-
http-multipart
multipart for http crate type
-
wrapper
A trait for types that wrap other types
-
dif
Device Information File, a library for reading .dif files into a Rust struct
-
NEXMemory
Easily read, and write into a process's memory
-
flatbuffers
Official FlatBuffers Rust runtime library
-
acid_alloc
Bare-metal allocators
-
alloc-safe
Safe memory allocation, no panic!
-
tux-owned-alloc
help reducing manual memory management errors
-
buddy-system
buddy system allocator for real-time usecases
-
storages
Storage backends for collections
-
bogo-alloc
An allocator that makes C/C++ developers feel right at home
-
interloc
Middleware allocator for keeping track of memory usage
-
bra
Buffered random access to sequential data sources
-
memoria
Memory allocation tracker. A bad memory profiler for production.
-
scoped-arena
Arena allocator with optional scopes
-
simt_hip_sys
part of simt. hip driver api bindings
-
zallocators
Bringing Zig like allocators to Rust
-
neocortex
Shared memory crate designed for simplicity, safety, and extensibility
-
fluke-buffet
Buffer management for the
fluke
crate -
silly-alloc
A collection of very basic allocators
-
default_allocator
default (userspace) memory allocator
-
alloc_uefi
Allocator for a UEFI environment
-
zeroize_alloc
A zeroizing allocator wrapper
-
executable_memory
executable memory for windows and unix
-
lazy_fn
lazy_static for functions!
-
transvec
safely transmute Vecs
-
nanny
Safe native abstractions for Node
-
pinvec
Growable vector-like structure which never moves its contents
-
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.
-
nano_arena
A tiny arena allocator that uses atomics
-
alloc-cortex-m
A heap allocator for Cortex-M processors
-
movable
A structure whose internal content can be moved out immutably
-
daktylos
memory-counting allocator
-
tinyrand-alloc
Extensions for using tinyrand with alloc
-
divvy-core
Composable allocators for Rust
-
boxarray
Safe way to allocate and initialize nested arrays directly on the heap in Rust
-
arcon_allocator
Allocator for Arcon
-
efw
Framework for writing UEFI applications
-
cell-gc
A fun garbage collector for that virtual machine you're writing in Rust
-
ordered-pool-allocator
A fast and compact pool allocator with block sorting support
-
alignas
Wrapper to specify object alignment generically
-
redox_uefi_alloc
UEFI allocation support
-
gg-alloc
A custom allocator that only returns pointers above 2G
-
scope_gc
Scope GC
-
caja
Adds the Caja struct which is basically Box<[T;n]>, but n can be not known at compile-time
-
chainlink
An arena-backed doubly linked list in 100% safe Rust
-
clip
A command line parser that doesn't use std or alloc!
-
bufpool
Vec<u8> pool allocator
-
std-shims
A series of std shims to make alloc more feasible
-
newlib-alloc
Global allocator for Rust no_std projects on newlib targets
-
boxing-arena
reuse of Box allocation
-
shared-memory-allocator
An extremely unsafe experiment in writing a custom allocator to use linux shared memory
-
shared_memory
A user friendly crate that allows you to share memory between processes
-
simple_games
games
-
mmapio
Cross-platform Rust API for memory-mapped file IO
-
nstd_collections
NSTD collections crate
-
mimalloc-sys
Rust FFI bindings to mimalloc
-
copy_arena
Arena allocator for types implementing Copy
-
str-intern
string interner
-
lock_free_buddy_allocator
Scalable lock-free buddy system allocator
-
alloc-metrics
A global allocator that tracks allocation metrics
-
fpool
Non-leased object-pooling
-
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
-
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… -
fixed_free_list
A fixed-size free-list with optional key lifetime safety and macroless unique typing
-
study-example
a study example
-
strck_ident
Checked owned and borrowed Unicode-based identifiers
-
io_uring_mmap
internal crate
-
leak_slice
leak &mut [T] in favor of NonNull<[T]>
-
nstd_alloc
NSTD memory allocation crate
-
alloc_system
NO-STD,for Cortex-M based systems,simply retarget alloc_system to malloc/realloc/free
-
same-alloc
Reuse an allocated buffer for data with different types
-
gc_plugin
Garbage collector plugin for rust-gc
-
falloc
fast allocator
-
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.
-
scudo-sys
C/FFI Bindings for the Scudo Hardened Allocator
-
shared_arena
A thread-safe & efficient memory pool
-
alloc_buddy_simple2
drop-in replacement allocator for Rust running on bare metal (no_std)
-
poule
A pool of reusable values
-
forkheap
An allocator suitable for sharing heaps between forked processes on Linux
-
string-pool
Global immutable string pool, like Java
-
haque
An abomination for messing with memory
-
maskerad_stack_allocator
Stack-based allocators, for contiguous allocation and memory fragmentation prevention
-
tralloc
trace allocations and deallocations
-
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…
-
rustbuddy
buddy memory allocation algorithm
-
dybs
An experiment in dynamic single-owner, multiple-borrow smart pointers
-
type_erased_vec
A type erased Vec
-
memory_addresses
Unified virtual and physical address types for the Hermit ecosystem and beyond
-
hwlocality
Idiomatic Rust bindings for the hwloc hardware locality library
-
trust_me
Just replace unsafe keyword to
safe!
macro. Always trust programmers. -
anycast
Allows upcasting to Any
-
mmap-safe
A safe wrapper around file-backed memory maps
-
mimalloc2
-
polymock
A thread-safe arena bytes allocator
-
stor
Helpers for genericising over storage types
-
cfixed-string
Pass Rust strings to C with potentially not needing heap allocation
-
function_string_builder
A string builder that takes a user-provided function
-
vitallocator
allocator interface to the PS Vita kernel allocator
-
elise
A concurrent GC
-
easy_mmap
Strongly typed memory mapped files that allow for easy manipulation of large amounts of data
-
mappable-rc
mappable reference counted types
-
userfaultfd-sys
Low-level bindings for userfaultfd functionality on Linux
-
haz-alloc-core
A general-purpose allocator written in Rust, without system symbols
-
allocator
-
walloc
Malloc's Wario - allocates unusable, arbitrarily-sized blocks of memory on-command. Great for, uh, testing purposes?
-
const-alloc
Allocate dynamic memory at compile time
-
simple-slab
Fast and lightweight Slab Allocator
-
weak-table
Weak hash maps and sets
-
quickdry
Bump-pointer arena allocator
-
dy_tlsf
TLSF (Two-level segmented fit) global allocator
-
untyped-arena
Arena allocator implementation that is safe and untyped with minimal complexity
-
compact
Store objects containing dynamic fields either compactly in consecutive memory or using traditional heap pointers
-
trickster
user-friendly linux memory hacking library
-
mimallocate-sys
Beta bindings to the mimalloc allocator
-
bh_alloc
A fuzzer friendly bump pointer allocator
-
recycler
A small Rust library for recycling types containing owned memory
-
gladiator
A concurrent, modular and small garbage collector
-
memacc
Memory access functions
-
zerogc-context
Handles the context of a zerogc collector
-
alloc-traits
Traits to replace or supplement the alloc module in no_std
-
bumpslab
A slab allocator with stable references
-
remem
Thread-safe object reuse
-
rshm
Linux's shm shared memory facilities in Rust
-
memory_addr
Wrappers and helper functions for physical and virtual addresses
-
without-alloc
Replacements for
Box
,Rc
,Vec
, .. withoutalloc
-
dbs-address-space
address space manager for virtual machines
-
loupe
Profiling tool for Rust
-
vec_cell
A Vec with interior mutability and dynamically checked borrow rules which allows to take disjoint mutable references to its elements
-
alloc-chibios
Allocator for ChibiOS 2.6
-
cable
A cable(pointer) with a hook(header at address) at the end and a sized payload(array)
-
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
-
rs-mem
minimal memory helpers (no dependency on std)
-
rt-own
runtime ownership: owner, sharer and holder
-
jenga
A stack based allocator
-
stak-device
Devices for Stak Scheme
-
trove
arena allocator
-
libarena
Arena allocated graph implementation
-
rust_jemalloc_pprof_internal
Used internally by rust_jemalloc_pprof
-
sharedptr
Rust Sharedptr
-
mmap-allocator
struct implementing trait std::alloc::GlobalAlloc for unix
-
alleakator
leaking global allocator
-
eko-gc
Scoped garbage collector
-
regalloc2
Backtracking register allocator inspired from IonMonkey
-
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 -
papaya
A fast and ergonomic concurrent hash-table for read-heavy workloads
-
guard-trait
Contains fundamental wrappers for pointer types that can safely be shared in memory-sharing completion-based I/O interfaces
-
scoped_allocator
A scoped linear allocator
-
reclaim
trait-based abstract interface for memory reclamation
-
async_to_iter
Convert async functions to generators on stable Rust
-
empty-box
Allows for
Box
s to have their values moved out and replaced with new values, while reusing the same allocation -
shared_slab
Data structure with shared insertion
-
slot-arena
Compacted memory allocation using opaque references
-
linear-malloc
An ultra simple single-threaded linear allocator
-
malloc_freq
Malloc frequency profiler
-
vulkan-malloc
A general purpose device memory allocator for Vulkan
-
accounting-allocator
A global memory allocator wrapper which counts allocated and deallocated bytes
-
warlock
Arena allocation optimized collections
-
block_allocator
Thread-safe, fixed-size allocator that serves re-usable blocks
-
weak-alloc
A custom allocator that can be given ownership of data, returning a WeakRef
-
slimbox
A thin pointer type for heap allocation
-
heaparray
Flexible support for dynamically-sized types, using heap-allocated array of structs
-
fallacy-box
fallible Box
-
chromium
add some stability to your metal!
-
heaptrack
Easily track heap usage with this allocator wrapper
-
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
. -
rccell
A convenient wrapper for Rc<RefCell<T>>
-
ringu
Thread-safe no_std ring buffer
-
memflow-kvm
kvm connector for the memflow physical memory introspection framework
-
cbloom
Concurrent implementation of Bloom filters
-
page_table_multiarch
Generic page table structures for various hardware architectures
-
hv-stampede
Bumpalo-based arena allocation utilities for Heavy
-
dumpalo
A minimalistic global bump allocator
-
viaptr
An experimental library for packing complex types into pointer-sized fields
-
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
. -
vec-arena
object arena
-
generational-arena
A safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices
-
crndm
Persistent Programming Library
-
gomicollector
mark-sweep garbage collector
-
ralloc_shim
The binding layer for the rallc memory allocator
-
slot
type-shaped chunk of memory
-
fixed-size-allocator
A fixed-size allocator
-
elsa
Append-only collections for Rust where borrows to entries can outlive insertions
-
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
-
freelist
datastructure implementation providing unsafe access to backing storage
-
zerovec-derive
Custom derive for the zerovec crate
-
compact_str
A memory efficient string type that transparently stores strings on the stack, when possible
-
cesium-allocator
Allocator pool for managing sets of allocators
-
tikv-jemallocator-global
Sets
jemalloc
as the#[global_allocator]
-
bump-allocator
A high performance `#[global_allocator] implementation using the bump-pointer allocation algorithm
-
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…
-
rarena
Lock-free allocator and data structures based on ARENA
-
Pointers_Study_With_Core_Concepts
A study on rust smart pointers, with their essential concepts documented
-
bip
bip (
Box
in place) provides a fully generic in-placemap
for theBox
type, taking care to be panic-safe and not leak memory -
dummy-alloc
Global allocator that fails all allocations
-
mmslice
-
dreck
A safe tracing garbage collection library with minimal safety bookkeeping
-
slab_32
Forked from the main slab crate as an experiment. Don't use.
-
squash
More space efficient encoding of owned heap-allocated slices
-
ptr_cell
Thread-safe cell based on atomic pointers
-
maligned
A memory alignment library
-
scanflow
memory scanning library based on memflow
-
zalloc
A global allocator wrapper zeroizing memory on dealloc
-
rheaper
A in-process heap profiler for rust
-
storagevec
Feature-gated heap-based/stack-based map and vector structures
-
lib_malloc_freq
Use malloc frequency profiler (malloc_freq) via LD_PRELOAD
-
cev
An expandable data array used to add data to the beginning of the array
-
dodgems
fast bump allocator library
-
bdwgc-sys
Boehm-Demers-Weiser garbage collector bindings for Rust
-
veryfast
Fast Rust and other tools for game development
-
outsource-heap
Shoving your heap in random places
-
passable
Pass a pointer around
-
hato
Heterogeneous Arenas of Trait Objects
-
tracing-allocator
track allocations and deallocations
-
super-slab
Pre-allocated storage for a uniform data type, based upon slab
-
hazard
pointers
-
alloc_hoard
use Hoard as rust's allocator
-
cesium-libmimalloc-sys
FFI wrapper for Microsoft's mimalloc allocator
-
ruyi-slab
An object based allocator
-
ref_arena
An arena of reference counted objects
-
copying_gc
copying garbage collector
-
easy-pool
An easy way to reuse your objects without reallocating memory every time
-
aren_alloc
allocator for small copyable objects inspired by object-pools
-
zuffer
A mmap file based buffer implementation
-
mimallocator
allocator backed by mimalloc
-
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.
-
collect_into_rc_slice
that let’s you collect an
Iterator<Item=T>
into anRc<[T]>
orArc<[T]>
without needing to make 2 heap allocations -
inlined
Types for inlining small collections for avoiding unnecessary heap allocations
-
fallacy-arc
fallible Arc
-
map_in_place
Reuse the memory of a Vec<T>, Box<[T]> or Box<T> when mapping the elements if possible
-
type-handle
Regular and reference-counted type handles
-
mmap-alloc
allocator backed by memory mappings
-
fallacy-alloc
fallible allocation
-
ochenslab
Trivial and fast fixed-size allocator/container
-
growable
reusable box for Rust
-
fortify
convenient way to bundle owned data with a borrowing type
-
cubecl-hip-sys
Rust bindings for AMD ROCm HIP runtime libraries used by CubeCL
-
concurrent-slotmap
A lock-free concurrent slotmap
-
rc_collections
Shared, reference-counted, copy-on-write, single-pointer buffers
-
boxify
Place your values directly on the heap without creating them on the stack first
-
swifer
Garbage collection for Rust-based runtimes
-
open-transaction-pool
Open transaction pool is an extensible OTX solution based on memory pool
-
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
… -
stak-r7rs
Stak Scheme primitives for R7RS
-
rc_arena
An arena which yields reference counted pointers to the underlying objects
-
cgc-single-threaded
Compacting garbage collector
-
arcslab
Slab, but with reference counted items
-
portable-dlmalloc
Portable Fork of Doug Lea's malloc Implementation
-
gcmodule
Cyclic garbage collection inspired by CPython's gc implementation
-
rlsf
Real-time dynamic memory allocator based on the TLSF algorithm
-
get-size-derive2
Derives the GetSize trait
-
zerogc-simple
Lightweight mark/sweep collector for zerogc
-
smalloca
A portable stack based slice allocator that supports
[no_std]
-
reffers
Smart pointers: ARef, that allows even further owner erasure than OwningRef. Strong is a memory efficient Rc + RefCell in one. And more!
-
slice-pool
using a slice as a memory pool
-
memory-balloon
Memory filling tool. Allocates a chunk of memory of a specified size and tries to make sure the OS keeps it in main memory, and not the swap.
-
no_alloc
Embedded friendly pointer types for applications without heap allocators