Mimalloc

Microsoft open source library
mimalloc
Original author(s)Daan Leijen /
Microsoft Research
Developer(s)Microsoft
Initial releaseJuly 2019; 4 years ago (2019-07)
Stable release
2.1.4[1] Edit this on Wikidata / 5 May 2024
Repositorygithub.com/microsoft/mimalloc
Written inC
Operating systemWindows, FreeBSD, NetBSD, DragonFly BSD, macOS, Linux
TypeSoftware library
LicenseMIT License
Websitemicrosoft.github.io/mimalloc/

mimalloc (pronounced "me-malloc") is a free and open-source compact general-purpose memory allocator developed by Microsoft[2] with focus on performance characteristics. The library is about 11000 lines of code and works as a drop-in replacement for malloc of the C standard library[3] and requires no additional code changes.[4] mimalloc was initially developed for the run-time systems of the Lean and Koka languages. Notable design aspects include free list sharding, eager page reset, first-class heaps. It can co-exist with other memory allocators linked to the same program. mimalloc is available on Windows, Mac OS X, Linux and *BSD.[5] The source code is licensed under MIT License and available on GitHub.[6]

See also

  • Free and open-source software portal

References

  1. ^ "Release 2.1.4". 22 April 2024. Retrieved 23 April 2024.
  2. ^ "Maruf Ali: Investigation of Memory Allocators" (PDF).
  3. ^ "Microsoft releases optimized malloc() as open source - Slashdot". slashdot.org.
  4. ^ "Analysis of mimalloc". Develop Paper. September 11, 2019.
  5. ^ "Google Translate". translate.google.com. 25 June 2019.
  6. ^ "microsoft/mimalloc". July 5, 2020 – via GitHub.

Further reading

  • Leijen, Daan; Zorn, Benjamin; De Moura, Leonardo (2019). Mimalloc: Free List Sharding in Action (PDF). doi:10.1007/978-3-030-34175-6_13. ISBN 978-3-030-34174-9. S2CID 198363081.

External links

  • GitHub - microsoft/mimalloc
  • Reviewing mimalloc: Part I - Ayende @ Rahien
  • Reviewing mimalloc: Part II - Ayende @ Rahien
  • v
  • t
  • e
  • Memory management as a function of an operating system
HardwareVirtual memoryMemory segmentationMemory allocatorManual memory managementGarbage collectionMemory safetyIssuesOther
  • Memory management
  • Virtual memory
  • Automatic memory management
  • Memory management algorithms
  • Memory management software
  • v
  • t
  • e
Overview
Software
Applications
Video games
  • Allegiance
Programming
languages
Frameworks,
development tools
Operating systems
Other
Licenses
Forges
Related
Category
  • v
  • t
  • e
Main
projects
Languages, compilers
Distributedgrid computing
Internet, networking
Other projects
Operating systems
  • Barrelfish
  • HomeOS
  • Midori
  • Singularity
  • Verve
APIs
  • Accelerator
  • Dryad
  • Joins
  • mimalloc
  • SXM
Launched as products
MSR Labs
applied
research
Live Labs
Current
Discontinued
FUSE Labs
Other labs
Category
Stub icon

This article about software created, produced or developed by Microsoft is a stub. You can help Wikipedia by expanding it.

  • v
  • t
  • e