bc-mimalloc 0.1.48

Performance and security oriented drop-in allocator (updated to v2.2.7 and v3.2.8, respectively)
Documentation
  • Coverage
  • 100%
    2 out of 2 items documented0 out of 1 items with examples
  • Size
  • Source code size: 15.96 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 172.9 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 16s Average build duration of successful builds.
  • all releases: 16s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • bluecatengineering/mimalloc_rust
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • leshow

Mimalloc Rust

Latest Version Documentation

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-sys published under the names bc-mimalloc and bc-libmimalloc-sys. It updates the bundled mimalloc C library to v2.2.7 (default) and v3.2.8 (opt-in via the v3 feature).

Usage

use bc_mimalloc::MiMalloc;

#[global_allocator]
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"] }