profiling GTA4. question about polling

Brian Gunlogson bmg300 at
Wed Nov 17 18:29:48 CST 2004

--- Raphael <fenix at> wrote:

> Well, drawStriddedSlow is very very very slow (as function name :) )
> because is the software rendering path of wine d3d8 implementation
> The only way to have good performances is to add needed support to hardware 
> rendering path (drawStriddedFast).
> Current version on hardware rendering path doesn't support (see 
> d3d8/drawprim.c:1590):
>  - pixel size (rarely used)
>  - blending weights (low use)
>  - diffuse color (highly used)
> In this cases the slow rendering path is used instead.
> I have a local "prototype" to have a better support of that cases (using 
> hardware vertex buffers) who have very good performances.
> Ex: i have now a good framerate for UT2004 and Unreal2 (before i had ugly 
> lags)
> But, as Jason is currently doing a lot of work on splitting/moving code to 
> wined3d, we'll have to wait to commit it (and i should help him, when i'll 
> have time).

Is this a tedious task or does it require knowledge of the codebase? I might be able to help.

> Anyway, can you test what GTA4 want to use: diffuse, psize or/and blending ?
> I'll try to send you a patched version of d3d8 to test after that :)

GTA uses diffuse color exclusively.
This was after playing the game for about 3 minutes on highest settings:
pixel size: 0
diffuse: 745455
blending weights: 0

> Regards,
> Raphael
> PS: 
> how have you done to use oprofile on wine ?
> i'm very interested :)

Just download the latest CVS from and see the README.
I assume you know how to get it compiled and installed :)

As root:
# opcontrol --start
# opcontrol --reset
'--reset' clears out any old unwanted profiling data
# opcontrol --separate=kernel
'--separate=kernel' Seperates output by library and kernel [this is the hardest option to

Profiling is on, run the application to profile and do not do anything else.

When done:
# opcontrol --dump
'--dump' flushes remaining data to disk
# opreport -l >./myreport.log
Stores the flat profile in a file called myreport.log.

Brian G

Do you Yahoo!? 
Meet the all-new My Yahoo! - Try it today! 

More information about the wine-devel mailing list