11# snmalloc-rs
22
3- ** Notice: MinGW Build is broken and may not be fixed in a near future.
4- See [ this PR] ( https://github.com/microsoft/snmalloc/pull/217 ) in the upstream.**
3+ CI: [ ![ Actions Status] ( https://github.com/schrodingerzhu/snmalloc-rs/workflows/rust/badge.svg )] ( https://github.com/microsoft/snmalloc-rs/actions )
54
6- MSVC/MinGW/Linux/MacOS: [ ![ Actions Status] ( https://github.com/schrodingerzhu/snmalloc-rs/workflows/Rust/badge.svg )] ( https://github.com/schrodingerzhu/snmalloc-rs/actions )
7-
8- FreeBSD: [ ![ Build Status] ( https://api.cirrus-ci.com/github/SchrodingerZhu/snmalloc-rs.svg )] ( https://cirrus-ci.com/github/SchrodingerZhu/snmalloc-rs )
95
106` snmalloc-rs ` provides a wrapper for [ ` microsoft/snmalloc ` ] ( https://github.com/microsoft/snmalloc ) to make it usable as
117a global allocator for rust. snmalloc is a research allocator. Its key design features are:
@@ -16,9 +12,9 @@ a global allocator for rust. snmalloc is a research allocator. Its key design fe
1612- The allocator uses large ranges of pages to reduce the amount of meta-data required.
1713
1814Some old benchmark results are available in
19- the [ ` snmalloc ` paper] ( https://github.com/microsoft/snmalloc/blob/master/snmalloc.pdf ) . Some recent benchmark results
20- are listed at
21- [ bench_suite ] ( https://github.com/SchrodingerZhu/bench_suite ) . There are three features defined in this crate:
15+ the [ ` snmalloc ` paper] ( https://github.com/microsoft/snmalloc/blob/master/snmalloc.pdf ) .
16+
17+ There are three features defined in this crate:
2218
2319- ` debug ` : Enable the ` Debug ` mode in ` snmalloc ` .
2420- ~~ ` 1mib ` : Use the ` 1mib ` chunk configuration. From ` 0.2.17 ` , this is set as a default feature~~ (removed since 0.3.0)
@@ -58,19 +54,6 @@ To set `SnMalloc` as the global allocator add this to your project:
5854static ALLOC : snmalloc_rs :: SnMalloc = snmalloc_rs :: SnMalloc ;
5955```
6056
61- ## For MinGW Users
62-
63- ` mingw ` version is only tested on nightly branch with MSYS environment. We are using dynamic linking method. Hence,
64- please make sure the following libs are in your ` PATH ` :
65-
66- - ` winpthread `
67- - ` atomic `
68- - ` stdc++ `
69- - ` gcc_s `
70-
71- ** Notice:** since version ` 0.2.12 ` , we no longer require you to provide additional environment variables for ` mingw `
72- target.
73-
7457## For Android Cross-Compilation
7558
7659- ` ANDROID_NDK ` must be provided as an environment variable
@@ -82,6 +65,11 @@ target.
8265
8366## Changelog
8467
68+ ### 0.7.4
69+
70+ - Tracking upstream to match version 0.7.4.
71+ - SnMalloc has been moved to upstream repository. Future releases will track upstream release directly.
72+
8573### 0.3.8
8674
8775- Tracking upstream to match version 0.7.1
0 commit comments