How to achieve the best possible performance with wine? I compared vanilla wine using latest radeonsi open source drivers, wine with the CSMT (d3dstream) patchset and wine with the Gallium nine patchset. I also compared the results to latest Catalyst drivers using wine patched with CSMT (d3dstream). Surprisingly radeonsi + gallium nine beats Catalyst + CSMT (d3dstream) in 3DMark2005 and reaches 86% of Catalyst + CSMT (d3dstream) in Tropics!
Soon open source radeonsi drivers with the gallium nine state tracker will be the best available solution to get the most out of wine: users aiming for the best performance should get rid of proprietary blobs if favor of open source drivers.
My card is an AMD HD7950 and I used latest graphic stack from git, including drm-next-3.18. To use gallium nine you will need FOSS drivers with a patched mesa and a patched wine. You can’t use gallium nine with proprietary drivers.
If a big team like CD Projekt RED thinks that using a wrapper layer like eON by Virtual Prgramming is a suitable solution for a AAA game port like The Witcher 2, who am I to ditch wine (which performs even better than eON)? I might even speak about benchmarking a native linux 3DMark version according to CD Projekt RED standards…
Anyway, I wanted to becnhmark something different and in particular to test wine’s D3D command stream patches, so I decided to try the famous 3DMarks: 3D Mark 2001, 3D Mark 2005 and 3DMark 2006. I did not test 3DMark 2003 because of this regression.
As I said in my previous post radeonsi is becoming faster than Catalyst in several scenarios. Some peoples on phoronix didn’t think it was actually possible and blamed “old games”. So I decided to benchmark Steam games, in particular Half-Life 2: Lost Coast, Team Fortress 2 and Portal. Unfortunately these are the only Steam games with a phoronix-test-suite profile available and they all use the Source engine. Hopefully the Phoronix Test Suite’s author Michael Larabel will provide us more profiles in the future, games with different engines.
AMD Radeon HD 7950 using kernel 3.15-rc4 + PTE patches (VRAM page table entry compression) + hyperz (R600_DEBUG=hyperz). I’m also using libdrm git, xf86-video-ati git, llvm 3.5 git, mesa git (OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.3.0-devel (git-cf93f86)) and Keith Packard’s xorg-server glamor-server branch (1.16.0 RC 2). Catalyst version is 14.4 (kernel 3.14.3, xorg-server 1.15.1).
Radeonsi is 21% faster than Catalyst with Half-Life 2: Lost Coast.
Radeonsi is 3% faster than Catalyst with Team Fortress 2.