James Huk
2010-Feb-07 00:31 UTC
[Wine] Wine 3D performance - where does the bottleneck lies and how much optimized wine is?
Hello everyone. I was wondering, why most D3D games works much slower on wine then on Windows? Ok now, I understand that some D3D functions needs clever workarounds to work on OpenGL and I'm not complaining, I just want to know how much more optimize do you think wine will become? I'm asking all this because I'm thinking of something like this: I have game X, this game use D3D8/9 and is working perfectly but slow, since it use D3D8/9 I can test WineD3D on Windows - and I can tell there is no difference there, so the slowness is only related to WineD3D, not the wine core. Now I would like to optimize the part of wine this particular game use. I was thinking to do the following: 1.Find out all D3D functions that this game use - shouldn't be too hard with WINEDEBUG=+all or WINEDEBUG=+d3d (I think). 2.Write simple programs to test speed of those functions on native D3D on Windows, and on WineD3D. 3.Then try to write code to make each function faster (jest I know, this sound so "easy" when I say it here, and is pretty damn hard in the real world) Now the problem is... if the wine code is already optimized to the limit of the high-level programming language, then there is no point, unless I would learn x86 Assembler - and use it to optimize outside the compiler - but this is not gonna happen anytime soon :( . But if the code is written with stability in mind rather then performance, then maybe I can do something to speed it up - even if only for a single game. So do you think there is a point in trying something like this? Thanks in advance and sorry for my English.