Memory allocation performance in single and multithreaded environments
is an important aspect of any application. Some allocators, such as
malloc in the Solaris Operating System, work best with single-threaded
applications. However, a different approach must be taken when
designing an allocator optimized for a multithreaded application.
This http://developers.sun.com/solaris/articles/multiproc/multiproc.html overview shows some considerable performance gains over malloc.
What is the mtmalloc equivalent for MSVC?
I’m not aware of Windows having any default memory allocator for multithreaded scenarios, but you can find a good suite of memory allocators optimized for multiple threads in Intel TBB: http://threadingbuildingblocks.org/files/documentation/a00235.html