ntdll: Heap implementation has a performance bottleneck

Frank Richter frank.richter at gmail.com
Wed Jul 19 05:21:51 CDT 2006


On 18.07.2006 23:21, Michael Kaufmann wrote:
> Hi,
> 
> I have discovered that Wine's heap implementation (HeapAlloc(),
> HeapFree(), etc. in dlls/ntdll/heap.c) is very slow if many small memory
> blocks are allocated and freed. Somebody has reported this before:
> http://www.winehq.org/pipermail/wine-devel/2005-February/034095.html

On the topic of memory allocation speed: even the NT allocator is
painstakingly slow, see some charts at:
http://www.nedprod.com/programs/portable/nedmalloc/index.html .

I don't know, would it be technically possible to back heap allocation
by one of these alternative memory allocators mentioned on that page? If
so, you could get a "free" performance advantage over native by simply
using a better allocator (for some programs, at least).

-f.r.




More information about the wine-devel mailing list