Greg Marr wrote:

At 01:01 PM 07/11/2001, dean gaudet wrote:

i know nothing about the quality of windows malloc on multi-cpu boxes.


As of VC++ 6.0 SP4:
There is a small block freelist for blocks 0x3F8 or smaller. It uses a critical section around the allocator. Anything larger falls through to the HeapAlloc Win32 API function.

Except that on Win2k, the CRT library configures itself (dynamically, at program startup) to pass every single malloc off to HeapAlloc, thereby slowing small block allocation tremendously. In the project I work on, our app got slowdowns of up to 10x on certain test cases when we switched to SP4. We switched back to SP3 at once, of course.


Grrrrr.


-- Brane Čibej home: <[EMAIL PROTECTED]> http://www.xbc.nu/brane/ work: <[EMAIL PROTECTED]> http://www.hermes-softlab.com/ ACM : <[EMAIL PROTECTED]> http://www.acm.org/





Reply via email to