About VMem

A C++ memory manager that can speed up your application and reduce memory overhead.

VMem is designed to be plugged in to any C++ codebase. VMem can take over the job of managing memory for the entire process by overriding the global new and delete. VMem is designed to be very fast, especially under high contention, and have a very low memory overhead. VMem also has extensive error checking and debug features.

VMem Features

  • A C++ memory manager designed to be used as a general purpose malloc replacement.
  • Designed to perform well under high contention, and to keep fragmentation and to a minimum. This is particularly import for long running applications in a constrained memory environment.
  • Speed up any application that makes heavy use of new and delete, especially of the application is multi-threaded.
  • Employs fast caches for each allocator, in the general case an allocation is little more than a single Compare and Swap instruction.
  • Designed for large complex multi-threaded applications running on modern processors.
  • To limit overhead, as soon as a hardware page becomes empty it is unmapped and available for use elsewhere. This makes the system self-balancing. VMem also uses a technique called address space biasing in order to limit fragmentation.
  • VMem has extensive debug and error checking features to help track down memory corruptions and buffer overruns. The VMem code is clean and efficient.