On Mon, Feb 3, 2014 at 10:46 PM, Stefan Dösinger <stefandoesinger@gmail.com> wrote:
 
>> Hey list
>>
>> I'm trying to find out why CS:GO is slower under wine then windows.
>> When running a benchmark in CS:GO Win8 gets ~134fps and wine ~51fps.
>Overall 50% performance is about what you get on average on dual core machines, depending on the game and driver. The Nvidia binary Linux >driver gives you roughly 60%, the open source radeon driver approaches 30%-40%. This depends a lot on the game as well. 

>Did you have a look at my command stream patches? They address a major shortcoming in wined3d - it adds the ability to move major parts >of the CPU side work (The OpenGL calls) into a different thread. Windows had this since many years, and my (not yet upstream) work adds >it to Wine. I recommend to search the Wine-devel archives, I’ve written a lengthy mail about it somewhen in January. The single-threaded >nature of WineD3D is most likely where your 50% CPU usage (Dual Core?) comes from.
 
I hadn't heard of your command stream patches so I found the emails you were talking about, cloned your repository and tested it today. It does help but I haven't got any solid numbers yet. But this is what i've got so far: https://docs.google.com/spreadsheet/ccc?key=0AmPNQYtpuejodDVQc2ctc084cjVISE5NVUd2ZC03MVE&usp=sharing

I should have mentioned that I'm running this on a quad core (Intel Core 2 Quad Q6600) and was getting 50% accross all four cores compared to windows 65-75% accross the four cores. The interesting thing being that so far in my single test. WineD3d with multicore disabled is faster then windows with WineD3d multicore disabled.

>> I've been following Stefan Dösingers guide (http://wiki.winehq.org/Performance) and have
>> compiled wined3d for windows and tryed running CS:GO using wined3d under win8 but it just crashes while loading the map. At a guess I'd >>say once it trys to do 3D rendering.
>Did you define USE_WIN32_OPENGL? It is needed to adjust the calling convention to Win32’s WINAPI convention. I think it is explained in >the Wiki article, but I cannot check at the moment because I am drafting this mail in an airplane.

I followed this guide (http://wiki.winehq.org/WineD3DOnWindows) so I did use USE_WIN32_OPENGL. I found out what the problem was. I was able to use WineD3D with Counter-Strike source but not CS:GO on windows. Turns out if the multicore option is enabled so it uses more then one thread then CS:GO and CS:S will crash when using WineD3D under windows.

I also compiled WineD3d with your command stream patches and ran them under windows once I figured out it was the multicore option causing the crashes.

Which now I have no idea how to debug why it crashes when it is using multiple threads.

Thanks for your time and your reply.
Regards Brock YOrk.