Mimalloc Rust
A drop-in global allocator wrapper around the mimalloc allocator. Mimalloc is a general purpose, performance oriented allocator built by Microsoft.
Note: This is a fork of
mimalloc/libmimalloc-syspublished under the namesbc-mimallocandbc-libmimalloc-sys. It updates the bundled mimalloc C library to v2.2.7 (default) and v3.2.8 (opt-in via thev3feature).
Usage
use MiMalloc;
static GLOBAL: MiMalloc = MiMalloc;
Requirements
A C compiler is required for building mimalloc with cargo.
Usage with secure mode
Using secure mode adds guard pages, randomized allocation, encrypted free lists, etc. The performance penalty is usually around 10% according to mimalloc own benchmarks.
To enable secure mode, put in Cargo.toml:
[dependencies]
bc-mimalloc = { version = "*", features = ["secure"] }
Usage with v3
By default this library uses mimalloc v2 (currently v2.2.7).
To enable v3 (v3.2.8), put in Cargo.toml:
[dependencies]
bc-mimalloc = { version = "*", features = ["v3"] }