[3/3] wined3d: Constant load optimisations

Norbert Lataille nlataill at gmail.com
Sat Aug 20 11:47:30 CDT 2011


Hi,

This patch is built on top of Part 1/2, and is replacing constant heap logic.
Oprofile shows that quite a lot of wined3d CPU is used in constant
heap maintenance and walks.

As DX initially sends constant ranges to be updated, splitting ranges
into individual
constant updates (through heap versionning) should be avoided if
possible. Especially
if we intend to send GL ranges at the end.

This patch maintains (and somewhat merges) ranges sent to DX, so that
walk_constant_heap()
(to be renamed ?) can directly issue range updates.

Thanks,

---
 dlls/wined3d/glsl_shader.c     |  305 ++++++++++++----------------------------
 dlls/wined3d/wined3d_private.h |    4 +
 2 files changed, 97 insertions(+), 212 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Replace-constant-heap-logic.txt
Type: text/x-patch
Size: 20424 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20110820/20f7d197/attachment-0001.bin>


More information about the wine-patches mailing list