Hi valve, I will try to let you guys know about a nice bug in your srcds application regarding XEON cpus and 128 ticks. First of all will I say that i am not especially good in English so please be kind. I will describe exactly what I have figured out on my own. Well, the problem stated when valve send out a update regarding the srcds application and changes the linux application and windows application 2013-11-15 I believe.
What have then happened after the update? Well the 128 tickrate have been a bit unstable also the var value from the server have reached from low value to higher. And also has result in a higher cpu usage for more players and less. Then I have an option to work with some different kind of processors that have a newer version of CPUs build. My test environment : *#1 server Intel Xeon E5-2620v2 processor* *#2 server Intel Xeon E5-2420 processor* *#3 server Intel i5-4570S hasswell (my own server home)* *#4 server Intel Xeon x5660 (older arch)* My test I use those following operation systems: 1. Linux Debian Weezy (64 bit) 2. Windows 2012 server (64 bit) 3. I use the same server config on all servers. Well, first of all I have read about people that say that the windows will works mush better with 128 tickrate against linux. But after my results in this test I will say that the linux still is a little bit better then windows. I start with the Intel Xeon E5-2620v2 with 32 players with bots. My first result was: With Linux the var value was about 1.0 - 3.0 and the tickrate was unstable and the sv value blinking orange but is not going to red. The server was playable but not more than that. The hitbox wasn’t fun! With windows on the same setup I got var on the same value as the linux does, and the sv value was red its freezing to the death. (that wasn’t playable) Linux use 100% -133% cpu usage on the process srcds_run but the system not even going over 5% cpu of the whole systems capacity. Windows use 30% on the process srcds_run but still lag as hell. Ok the result here is that the machine is not possible to use all the capacity of the cpu is like a wall have been created. Well we going forward, so now we going for the #2 server setup. So then we look at the results. With linux the var value was about 0.8 – 2.8 and the tickrate was unstable and going between orange and red. That wasn’t playable. With windows the var value was almost the same as the linux do. So that was not possible to play. And was the problem with the cpu this time, the process use 135 % cpu on process but the system is like sleeping. And the different here was that cpu was 45% on cpu usage on windows between the newer E5-2620v2 setup so it goes a little bit harder. Then we move on to the server 3 setup. I was quite surprised when I comes to the hasswell setup, because as soon as I join the server with 4 – 8 bots and the var value was about 0.8 and the ticrate was 128 the whole time. Then I believe that that may also be able to handle 32 players. So I decide to bring on 32 players on my server with linux and windows setup. And whola the process goes like a sunny day! Even if the process on top use 135% of cpu in the process, and the server use about 30% of cpu total the 32 players works smoth without tickrate drop. So then I belive that the higher gigahertz does the thing, so I decide to try with server 4. Whish has 2.8 Ghz processor. Which is quite higher than my server #1 and server #2 setup? And then to the result, it was so bad so the players can even go in spawn, both in windows and linux. The process does like they all do 135% on linux and about 33 % cpu usage on windows. The var value was 2.9 and the sv value was RED 5 -15. So then I have to start from the beginning again, because the Gigahertz wasn’t a problem! So then I take a deeper look in what cpu instructions my Haswell cpu use. I decide to look on the cpu instructions on both server #1 and server #2 so I have something to compare with. Well to be clear all servers have the same behavior. So what is the different here? *This is my cpu instructions from server #1. (E5-2620v2)* flags: fpu de tsc msr pae cx8 sep cmov pat clflush mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes f16c rdrand hypervisor lahf_lm ida arat pln pts dtherm fsgsbase erms *And this have server #2. (E5-2420)* flags: fpu de tsc msr pae cx8 sep cmov pat clflush mmx fxsr sse ssss ht syscall nx lm constant_tsc rep_good aperfmperf pni pclmulqdq ssse3 cx16e4_1 sse4_2 x2apic popcnt aes hypervisor lahf_lm ida arat As you can see here is that a little different between server #1 and server #2, but them have also the same type of issue so we move to that server that works great. * Server #4 (I5 - 4570S)* flags: fpu de tsc msr pae cx8 sep cmov pat clflush mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes f16c rdrand hypervisor lahf_lm abm ida arat pln pts dtherm fsgsbase erms As you can see did this server have an instruction with name : *abm* and *fma.* If we google this instructions are this part of AMD cpus. So what I am think is that the server use AMD binaries. Link : http://en.wikipedia.org/wiki/FMA_instruction_set Link : http://en.wikipedia.org/wiki/Bit_Manipulation_Instruction_Sets In 1.6 can you see if a server use a hlds_amd64 binaries or hlds_i686 binaries. But in the new srcds you cant! The name is only srcds_linux. I think that the server binaries from my hasswell have to be located as an AMD cpu. Then I believe that the AMD have a much better server binaries then intel has but I can be wrong here! With this I hope Valve will take a look in to my post and then take a look from there development team what them can done wrong since they sending out the new update 2013-11-15. I have also try to roll back the srcds from 2013-11-15, and with them running the server is using alot less cpu then the new version of binaries does, even if a player is online or not! I have also take a look of the binaries in csgo-ds/bin folder and the different between the working version and the bad version is that the size is larger on the new version, is about 1 mb more and one of the big changes is in the srcds_linux version and dedicated.so files. If you want more information regarding this valve, please contact me! /thanks Egner -- View this message in context: http://csgo-servers.1073505.n5.nabble.com/Valve-bug-report-regarding-XEON-cpus-and-csgo-servers-tp6091.html Sent from the CSGO_Servers mailing list archive at Nabble.com. _______________________________________________ Csgo_servers mailing list Csgo_servers@list.valvesoftware.com https://list.valvesoftware.com/cgi-bin/mailman/listinfo/csgo_servers