DanCF Posted June 1, 2006 Share Posted June 1, 2006 I am really not impressed with Windows load balancing between CPU. Take a look at this screenshot. Given that the largest server at the time of this shot is a 32man DoD server which is full. This is a dual 3.0Ghz Xeon machine. I doubt that all the load on CPU0 is just from that server. Why doesn't windows take everything else besides that one process and shift it over to the others that are doing almost nothing. I have the affinity set to CPU0,CPU1,CPU2 for all game servers, and have CPU3 reserved to my TeamSpeak processes. Is there anything I can do to make this load issue better. Would it be better to turn of hyperthreading and just have two CPUs? I find that when one CPU gets up that high, the servers even on other CPUs start getting high latency and get sluggish. Link to comment Share on other sites More sharing options...
DanCF Posted June 2, 2006 Author Share Posted June 2, 2006 i think i'll try posting this on WHT to see if I get any better response... Link to comment Share on other sites More sharing options...
Hogie Posted June 2, 2006 Share Posted June 2, 2006 It is probably that CPU affinity only works for 1 CPU. You set a single process to be affinited on a single CPU Since you are checking CPU0 for all of them, they are all running on that CPU. That is why it is better to just let the OS pick it, and to turn off hyper threading, expecially if you are running Battlefield 2 servers. Now you know, and knowing is half the battle. Link to comment Share on other sites More sharing options...
DanCF Posted June 2, 2006 Author Share Posted June 2, 2006 ohhh I thought when you checked affinity you were telling it which CPUs it could choose from. How do you let the OS decide? Not check anything? Link to comment Share on other sites More sharing options...
Hogie Posted June 2, 2006 Share Posted June 2, 2006 If you dont check anything, the operating system will choose for you. I recommend turning off Hyperthreading if it is hosting BF2 Link to comment Share on other sites More sharing options...
DanCF Posted June 2, 2006 Author Share Posted June 2, 2006 I am not hosting BF2. Should I keep hyperthreading on then? Link to comment Share on other sites More sharing options...
Hogie Posted June 2, 2006 Share Posted June 2, 2006 It depends on your games. Its a call YOU need to make. I dont run Hyperthreading on our servers except our linux webservers and mysql boxes... Link to comment Share on other sites More sharing options...
24play1 Posted June 16, 2006 Share Posted June 16, 2006 whys that hogie? DId I miss a thread :S Link to comment Share on other sites More sharing options...
ChrisOlver Posted June 22, 2006 Share Posted June 22, 2006 In certain cases it can decrease performance and cause more problems than its worth. -Chris Link to comment Share on other sites More sharing options...
Hogie Posted June 22, 2006 Share Posted June 22, 2006 Well, that, and that we run all opterons on our game servers;) Link to comment Share on other sites More sharing options...
ECF Posted June 22, 2006 Share Posted June 22, 2006 I think you are misunderstanding the balancing. You cannot set the affinity to 3 out of the 4 virtual CPUs. It can be set to ONE virtual or actual CPU, or you can leave it unchecked , in which case it lets windows do the balancing. If you check 1,2,3 it will simply bind to CPU1 not 1, 2 and 3. Link to comment Share on other sites More sharing options...
ChrisOlver Posted June 22, 2006 Share Posted June 22, 2006 Wow just found out that cs source doesnt use hyperthreading.. Oh fun.. Link to comment Share on other sites More sharing options...
DanCF Posted June 23, 2006 Author Share Posted June 23, 2006 I just found this on srcds.com "This would be correct if Windows was able to automatically move processes from one CPU to the next while they were running, but it can't. So, using your own logic, if a server is freshly booted and all of the hosted servers need to be started, Windows will place each processes on CPU1 because all of the SRCDS processes will be idle, hence no activity. This will remain the same with little or no people playing on the servers. Now with 10 servers running on CPU1, what happens when they are all full? lag/crash/etc." Is this true? If this is the case then wouldn't leaving all the affinities blank to let windows decide be bad? Link to comment Share on other sites More sharing options...
ECF Posted June 23, 2006 Share Posted June 23, 2006 I guess in that case it would be bad. Link to comment Share on other sites More sharing options...
DanCF Posted June 23, 2006 Author Share Posted June 23, 2006 So if you did do a reboot, upon restart windows would put all your processes on CPU0 and they would not be switched to other CPUs as needed. Link to comment Share on other sites More sharing options...
ECF Posted June 23, 2006 Share Posted June 23, 2006 Apparently according to that info that was posted. However, don't believe everything you hear in forums. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.