nedmalloc an alternative malloc implementation written in C for multiple threads without lock contention based on dlmalloc v2.8.3.
It is more or less a newer implementation of ptmalloc2, the standard allocator in Linux (which is based on dlmalloc v2.7.0) but also contains a per-thread cache for maximum CPU scalability. It comes under the Boost software license which permits commercial usage.
It is more than 125 times faster than the standard Win32 memory allocator, 4-10 times faster than the standard FreeBSD memory allocator and up to twice as fast as ptmalloc2, the standard Linux memory allocator. It can sustain between 7.3m and 8.2m malloc & free pair operations per second on a 2200Mhz AMD Athlon64 machine.
It scales with extra CPU's far better than either the standard Win32 memory allocator or ptmalloc2 and can cause significantly less memory bloating than ptmalloc2. nedmalloc project avoids processor serialisation (locking) entirely when the requested memory size is in the thread cache.
Product's homepage
What's New in This Release: [ read full changelog ]
· Huge changes were made, including an experimental constant time VM allocator that runs in user space in Windows Vista or later, and lots of improvements to the documentation.
· The test framework was significantly improved. realloc() performance was significantly improved for large blocks on Windows.
· A policy driven STL metaprogramming adaptor was added for making std::vector have O(1) expansion performance and making use of rvalue reference constructors on C++0x.
· Lots of bugs were fixed.