On Sun, Aug 9, 2009 at 3:51 PM, Roderick Colenbrander<[email protected]> wrote: > Hi, > > As of Wine 1.1.27, XShm support was added for the creation of > DIBSECTIONs in winex11.drv. The use of XShm more closely matches to > the Windows behavior and can also bring more performance. > > An Nvidia developer noticed this change in the ChangeLog and we both > wondered why even more XShm code was added in this time because XShm > has lost its use due to the emergence of EXA-like display drivers. > Modern drivers disable a large amount of hardware acceleration when > using XShm because they can't create the pixmaps in video memory since > the client owns the memory. This could decrease performance quite a > bit for most applications if they aren't hit by dibsection > back-and-forth copying bottlenecks. XRender for instance falls back to > software rendering for non-video memory based pixmaps. > > I would perhaps suggest that we should perhaps drop XShm support (or > at least add a registry key for it and disable it perhaps on 'modern > drivers'). What do you guys think?
So, it hurts performance on applications that are running on modern drivers without using DIB sections, but helps for applications using DIB sections, or non-modern drivers? Should probably disable by default and enable optionally with a registry key. The few that need it then have it available, without hurting the majority. -- -Austin
