32 releases

new 0.1.42 May 20, 2024
0.1.39 Sep 14, 2023
0.1.37 Apr 25, 2023
0.1.34 Jan 7, 2023
0.1.5 Jul 2, 2019

#10 in Memory management

Download history 56222/week @ 2024-01-29 60413/week @ 2024-02-05 60173/week @ 2024-02-12 60202/week @ 2024-02-19 69100/week @ 2024-02-26 66351/week @ 2024-03-04 67386/week @ 2024-03-11 70179/week @ 2024-03-18 66508/week @ 2024-03-25 68846/week @ 2024-04-01 72135/week @ 2024-04-08 76211/week @ 2024-04-15 85585/week @ 2024-04-22 82716/week @ 2024-04-29 77014/week @ 2024-05-06 73209/week @ 2024-05-13

324,456 downloads per month
Used in 193 crates (170 directly)

MIT license

545KB
9K SLoC

C 9K SLoC // 0.2% comments Rust 494 SLoC // 0.0% comments

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.

Usage

use 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]
mimalloc = { version = "*", features = ["secure"] }

Dependencies