Skip to content

Commit 6ca454a

Browse files
committed
update readme
1 parent 4a590b1 commit 6ca454a

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

readme.md

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ is a general purpose allocator with excellent [performance](#performance) charac
1212
Initially developed by Daan Leijen for the run-time systems of the
1313
[Koka](https://koka-lang.github.io) and [Lean](https://github.com/leanprover/lean) languages.
1414

15-
Latest release tag: `v2.0.2` (beta, 2021-06-17).
16-
Latest stable tag: `v1.7.2` (2021-06-17).
15+
Latest release tag: `v2.0.3` (beta, 2021-11-14).
16+
Latest stable tag: `v1.7.3` (2021-11-14).
1717

1818
mimalloc is a drop-in replacement for `malloc` and can be used in other programs
1919
without code changes, for example, on dynamically linked ELF-based systems (Linux, BSD, etc.) you can use it as:
@@ -77,6 +77,10 @@ Note: the `v2.x` beta has a new algorithm for managing internal mimalloc pages t
7777
and fragmentation compared to mimalloc `v1.x` (especially for large workloads). Should otherwise have similar performance
7878
(see [below](#performance)); please report if you observe any significant performance regression.
7979

80+
* 2021-11-14, `v1.7.3`, `v2.0.3` (beta): improved WASM support, improved macOS support and performance (including
81+
M1), improved performance for v2 for large objects, Python integration improvements, more standard
82+
installation directories, various small fixes.
83+
8084
* 2021-06-17, `v1.7.2`, `v2.0.2` (beta): support M1, better installation layout on Linux, fix
8185
thread_id on Android, prefer 2-6TiB area for aligned allocation to work better on pre-windows 8, various small fixes.
8286

@@ -142,7 +146,7 @@ mimalloc is used in various large scale low-latency services and programs, for e
142146

143147
## Windows
144148

145-
Open `ide/vs2019/mimalloc.sln` in Visual Studio 2019 and build (or `ide/vs2017/mimalloc.sln`).
149+
Open `ide/vs2019/mimalloc.sln` in Visual Studio 2019 and build.
146150
The `mimalloc` project builds a static library (in `out/msvc-x64`), while the
147151
`mimalloc-override` project builds a DLL for overriding malloc
148152
in the entire program.
@@ -191,6 +195,11 @@ Notes:
191195
2. Install CCMake: `sudo apt-get install cmake-curses-gui`
192196

193197

198+
## Single source
199+
200+
You can also directly build the single `src/static.c` file as part of your project without
201+
needing `cmake` at all. Make sure to also add the mimalloc `include` directory to the include path.
202+
194203

195204
# Using the library
196205

@@ -337,9 +346,9 @@ When _mimalloc_ is built using debug mode, various checks are done at runtime to
337346
- Corrupted free-lists and some forms of use-after-free are detected.
338347

339348

340-
# Overriding Malloc
349+
# Overriding Standard Malloc
341350

342-
Overriding the standard `malloc` can be done either _dynamically_ or _statically_.
351+
Overriding the standard `malloc` (and `new`) can be done either _dynamically_ or _statically_.
343352

344353
## Dynamic override
345354

@@ -370,13 +379,12 @@ On macOS we can also preload the mimalloc shared
370379
library so all calls to the standard `malloc` interface are
371380
resolved to the _mimalloc_ library.
372381
```
373-
> env DYLD_FORCE_FLAT_NAMESPACE=1 DYLD_INSERT_LIBRARIES=/usr/lib/libmimalloc.dylib myprogram
382+
> env DYLD_INSERT_LIBRARIES=/usr/lib/libmimalloc.dylib myprogram
374383
```
375384

376385
Note that certain security restrictions may apply when doing this from
377386
the [shell](https://stackoverflow.com/questions/43941322/dyld-insert-libraries-ignored-when-calling-application-through-bash).
378387

379-
(Note: macOS support for dynamic overriding is recent, please report any issues.)
380388

381389
### Override on Windows
382390

@@ -386,7 +394,7 @@ the (dynamic) C runtime allocator, including those from other DLL's or libraries
386394

387395
The overriding on Windows requires that you link your program explicitly with
388396
the mimalloc DLL and use the C-runtime library as a DLL (using the `/MD` or `/MDd` switch).
389-
Also, the `mimalloc-redirect.dll` (or `mimalloc-redirect32.dll`) must be available
397+
Also, the `mimalloc-redirect.dll` (or `mimalloc-redirect32.dll`) must be put
390398
in the same folder as the main `mimalloc-override.dll` at runtime (as it is a dependency).
391399
The redirection DLL ensures that all calls to the C runtime malloc API get redirected to
392400
mimalloc (in `mimalloc-override.dll`).

0 commit comments

Comments
 (0)