[Wine] Big files; Slow I/O

Duane Clark fpga at pacbell.net
Wed Nov 21 15:13:39 CST 2007


Jean-Michel Bruenn wrote:
> L. Rahyen wrote:
>> 	What about debugging. Because you want to find out what
>> functions in WINE are slow, it is bad idea to just use debugging
>> channels and try to find them manually. Most likely you just waste a
>> lot of time and find nothing. What you want to do is to profile WINE
>> not to debug it (in fact there is no bugs to debug in this case but
>> some inefficiencies in the code).
> 
> I thought - Maybe (if i'm lucky) i'll find some interesting things or
> things i could fix, so that i could provide help for others. (Like
> missing DLLs, other fixable errors, fixme's that i could fix, etc). The
> only thing i wouldn't touch is DirectX ;-)

Have you attempted to find out where the files are being written? There 
is a decent chance that the file writing is done in msvcrt. You might 
want to run with just the msvcrt debug channel turned on, and see if 
that is being used.

Then, you might try installing a native version of msvcrt, and perhaps 
the variations of them (msvcrt20, etc). Almost any Windows version 
should work okay. Override those DLLs in winecfg; it should be safe to 
override them globally for all applications.

Does this speed up the file writing? (I think it probably will). Then, 
since you apparently are willing to take a try at C coding, take a look 
at wine/dlls/msvcrt/file.c. Probably the program is doing lots of small 
writes, and Wine is not handling it in an efficient manner.




More information about the wine-users mailing list