Counter Strike Global Offensive: radeonsi is on par with Catalyst

AMD Radeon HD 7950 using kernel 3.17-rc5-drm-next-3.18-wip + hyperz (R600_DEBUG=hyperz). I’m also using libdrm git, xf86-video-ati git, llvm 3.6 git, mesa git and xorg-server 1.17.0 RC 1. Catalyst version is 14.6 beta2 (kernel 3.14.3, xorg-server 1.15.2).

You can find all the info on my system here: http://openbenchmarking.org/result/1409232-DARK-140923107

wine: vanilla vs CSMT (d3dstream) vs Gallium nine vs Catalyst

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.

Wine has to translate DirectX => OpenGL => Gallium, which add complications and brings inefficiency. Thanks to the gallium nine state tracker we simply skip the OpenGL translation. More info here: http://ixit.cz/faster-wine-games-with-open-source-drivers-d3d9-aka-gallium-nine/

Both 3DMark2005 and Unigine Tropics runs @2560×1600, here are some screenshots:

3dmark2005_2560x1600

tropics_2560x1600

You can find my wine vanilla, wine CSMT (d3dstream) and wine gallium nine ebuilds in my overlay.

A new linuxsystems overlay: wine-nine

This overlay allows you to build latest git version of mesa and wine with the gallium nine patches. Wine has to translate DirectX => OpenGL => Gallium, which add complications and brings inefficiency. Thanks to the gallium nine state tracker we simply skip the OpenGL translation. More info here: http://ixit.cz/faster-wine-games-with-open-source-drivers-d3d9-aka-gallium-nine/

This patchset is maintained by David Heidelberger (here you can find his work).

You can find my media-libs/mesa-9999 and app-emulation/wine ebuilds with gallium nine patches in the new wine-nine overlay: http://www.linuxsystems.it/overlay/

New ebuild: app-emulation/wine-1.7.24 CSMT (d3dstream)

You can find it in the wine-d3dstream overlay: http://www.linuxsystems.it/overlay/

A new linuxsystems overlay: wine

Latest wine version is currently 1.7.26 while latest version available in gentoo repositories is only 1.7.21.
This overlay allows you to build latest version of wine with pulseaudio, pipelight (compholio) and gstreamer support.

You can find my app-emulation/wine-1.7.26 ebuild in the new wine overlay: http://www.linuxsystems.it/overlay/

raspbian wheezy 20140726 available

I updated my Raspbian Wheezy minimal image, raspbian_wheezy_20130926.img.7z is available here:
http://www.linuxsystems.it/raspbian-wheezy-armhf-raspberry-pi-minimal-image/

– New kernel.
– New firmware.
– Works with Raspberry Pi model B+

raspbian wheezy 20140701 available

I updated my Raspbian Wheezy minimal image, raspbian_wheezy_20130923.img.7z is available here:
http://www.linuxsystems.it/raspbian-wheezy-armhf-raspberry-pi-minimal-image/

– New kernel.
– New firmware.
– rpi-update
– wireless-tools
– wpa_supplicant

radeonsi vs Catalyst 3DMark wine benchmarks

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.

I’m using default 3DMark settings and my video card is an AMD Radeon HD 7950. For radeonsi I’m using kernel 3.15-rc5 + 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 with a rebased Tom Stellard’s si-spill-fixes-v4 branch, mesa git (OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.3.0-devel (git-57730d6)) 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 because of compatibility issues). Wine version is 1.7.18 + Stefan Dösinger’s D3D command stream patches.

3dmark2001

3dmark2005

3dmark2006

What about you? Please share your 3DMark results and tell me which card/driver/wine version you are using.

A new linuxsystems overlay: wine-d3dstream

This overlay allows you to build latest git version of wine with the D3D command stream patches which create a separate command stream / worker thread for WineD3D. This work moves OpenGL calls into a seperate thread in order to improve performance up to 50~100% and in some cases making the games under Wine faster than on Windows.

This patchset is made by Stefan Dösinger (here you can find his work).

You can find my app-emulation/wine-9999 ebuild with d3d stream patches in the new wine-d3dstream overlay: http://www.linuxsystems.it/overlay/

Please make sure you have HKCU/Software/Wine/Direct3D/CSMT = “enabled” in the registry. To do so open a shell, type regedit, browse to HKCU/Software/Wine, right click and select new->key “Direct3D”, right click and select new->string “CSMT”, double click and set it to “enabled”.

Here is a quick benchmark of 3DMark 2001 with the radeonsi driver with and without d3d command stream patches:

wine_comparison

A new linuxsystems overlay: radeonsi

In my previous post someone asked about my radeonsi ebuilds, so I decided to create a new overlay.
This overlay allows you to use Keith Packard’s xorg-server glamor-server branch and Tom Stellard’s si-spill-fixes-v4 llvm branch (rebased from time to time by me). You will have to use my x11-drivers/xf86-video-ati and x11-drivers/xf86-video-intel ebuilds because otherwise they will try to install x11-libs/glamor which conflicts with >=x11-base/xorg-server-1.15.901.

Here you can find the new radeonsi overlay: http://www.linuxsystems.it/overlay/