Poor performance when using Texas Instruments code generation tools in Wine

Michael Stefaniuc mstefani at redhat.com
Tue Feb 22 06:16:47 CST 2005


Anders Rønningen wrote:
> Hi !
> 
> We have some performance problems with Wine that we could use some help 
> on..
> 
> Here's the story:
> 
> We have been using TI code generation tools (compiler and linker) on 
> Wine, and it has worked well. However, when we started evaluating newer 
> versions of the codegen tools, the linking time was dramatically 
> increased (from 20 sec to 30 minutes...).
> 
> We have done some profiling using oprofile, and found that most of this 
> time (96%) is spent in the HEAP_FindFreeBlock* *function in the ntdll 
> module. The time needed to locate a free heap block increases gradually, 
> from a few iterations up to about 15000 in the project we are building. 
> We suspect that this may be due to fragmentation caused by the heap 
> allocate/free algorithms.
> 
> We do not have the same problem when building the code under Windows, so 
> we tried to use the native ntdll.dll from Windows instead of 
> ntdll.dll.so, hoping that this would solve the performance issue. We are 
> aware that this is not recommended, but wanted to give it a try anyway. 
> We added the dll file to the global dll-override section in the config 
> file under ~/.wine/config, but it seems like Wine just looks for the 
> builtin dll. We see from strace that we access the correct config file 
> at startup. Is override of ntdll not supported, or have we missed 
> something? If it is supported, is it likely that it is going to work?
ntdll is one of the DLLs which will never be able to be used in Wine. So 
  Wine ignores any dll-override line for it.

> We have read some posts in the newsgroup about the heap issues. It seems 
> that people agree that the heap should be improved, either by tweaking 
> the existing code, or by using another heap implementation. Is any work 
> planned on this?
Not that i know off. The Linux kernel VM is a good place to get ideas 
how to limit memory fragmentation.

bye
	michael
-- 
Michael Stefaniuc               Tel.: +49-711-96437-199
Sr. Network Engineer            Fax.: +49-711-96437-111
Red Hat GmbH                    Email: mstefani at redhat.com
Hauptstaetterstr. 58            http://www.redhat.de/
D-70178 Stuttgart




More information about the wine-devel mailing list