Instrumenting wined3d library

Stefan Dösinger stefandoesinger at gmx.at
Fri Apr 22 05:28:54 CDT 2011


On Friday 22 April 2011 10:20:25 Emanuele Oriani wrote:
> Hi guys,
> 
> I'd like to instrument wined3d in order to get to the bottom of the two
> issues with StarCraft II:
You probably won't get far with instrumenting the functions. The cause(s) of 
the d3d performance issues are more complex than just one function that is too 
slow. It needs a more structured approach than just trying to fix single games.

In the last weeks I set up automated performance tests with the phoronix test 
suite. You can see the results at www.openbenchmarking.org. Michael Larabel 
has promised to add some functionality that should make following the results 
easier, but this hasn't happened yet unfortunately. (see e.g. [1] and [2]). 
What is missing is a single page to follow the progress of multiple wine 
versions.

It would be tremendously helpful to add a StarCraft 2 test. However the test 
has to be able to run fully automatically, with zero human intervention. I 
have not found a way to do this with SC2. Heck, I couldn't even find a 
benchmarking facility beyond writing the framerate with  Ctrl-Alt-F.

We also have to untangle the complexity of the games. I'd say we have dozens 
of performance bugs that each cost 1-2 percent compared to Windows and sum up. 
[3] is a small draw overhead test, more tests like it are needed:
*) A texture switching test
*) Framebuffer setup test
*) Shader changing performance
*) Shader constant setting
*) Stretchrect performance
*) Dynamic resources

Those are just a few guesses. Performance problems may be in other areas of 
D3D. My basic plan is to improve those narrow tests and use the automated 
performance tracking to verify that we're headed in the right direction.

Stefan

[1] http://openbenchmarking.org/result/1104209-GR-WINE1318122
[2] http://openbenchmarking.org/result/1104203-GR-WINE1318852
[3] https://84.112.174.163/~git/perftest
(note that the SSL cert is self-signed, you have to use 
GIT_SSL_NO_VERIFY=true)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20110422/5a96aca0/attachment.pgp>


More information about the wine-devel mailing list