|
It's well known that SC2 is a very CPU-hungry game. But until now I never had any solid data to prove how much CPU affected it. I did a couple of simple benchmarks tonight, showing how much impact a CPU overclock had on SC2 performance.
All benchmarks were taken using 1680 x 1050, Intel Core i5 2500K, 4 GB DDR3-1600 and a NVIDIA GTX 560 Ti, custom graphics settings (mostly High) running Windows 7 64 bit with Aero disabled.
+ Show Spoiler [Old Results] +All benchmarks were taken using the Unit Preloader map. XSplit was running in the background with an empty scene. Benchmarks results were taken from the first 40 real seconds of the Unit Preloader map sequence running at "Faster" speed, measured by FRAPS. The first two runs of the map were discarded to ensure everything had preloaded.
Stock (3300 MHz): Avg: 96.325 - Min: 55 - Max: 152
Stock Max Turbo (3700 MHz): Avg: 100.450 - Min: 59 - Max: 157
Overclocked (4000 MHz): Avg: 99.975 - Min: 50 - Max: 164
Overclocked (4400 MHz): Avg: 114.025 - Min: 69 - Max: 179
I'm going to call the 4000 MHz result an outlier as I only ran each test once and it's possible something in the background competed for CPU time as it doesn't make sense why the average FPS would be lower at 4000 vs 3700. An overclock of 4400 MHz gives 14 more minimum FPS and an average increase of almost 20 FPS. Not as big of a difference as I expected to be honest, but then again the Unit Preloader map may rely more on the GPU as there are no pathfinding algorithms or other calculations going on that stress the CPU. Since it's hard to re-create playing conditions accurately, this will have to do for now.
UPDATE: I repeated the experiment with a late game ZvZ replay with maxed armies:
3300 MHz: Avg: 41.925 - Min: 27 - Max: 58
3700 MHz: Avg: 46.625 - Min: 32 - Max: 63
4400 MHz: Avg: 56.025 - Min: 39 - Max: 77
If you have an i5 / i7 series CPU and haven't overclocked, a cheap $30 CPU cooler and a mild overclock could get you a rather nice FPS boost for relatively little effort. In addition to increasing SC2 FPS, overclocking will help with streaming too which is also very CPU hungry. As always, overclock at your own risk - if you aren't sure what you're doing, find a friend who does.
As part of this experiment, I was also investigating how many threads SC2 is able to take advantage of. It's clear that two cores is a huge improvement, but three cores also offered a very small (5 FPS) increase over just two cores. Also of note, it appears SC2 has its own logic that disables use of hyperthreaded CPU cores so that two threads won't get scheduled to the same physical CPU.
In combination with xsplit or other CPU intensive programs running on an i7, you could achieve better core throughput by making sure that nothing else is using the same physical CPU cores as SC2 (eg assign Core 0 and Core 2 to SC2 and make sure xsplit isn't using Core 0,1,2,3). Manually setting affinity only seems to provide a performance boost when hyperthreading is enabled, I was unable to measure any difference on my i5.
Another thing I found interesting (diverging into an xsplit blog here...) is that disabling the virtual camera in xsplit settings resulted in 5-10 FPS increase at idle, even if no application was using the virtual camera. Disabling Aero gave 5 FPS increase at idle, presumably because the GPU isn't having to render Windows elements.
I'd like to test how memory bandwidth affects SC2 performance too, especially when streaming. Unfortunately since this requires a reboot after each change, I don't have the patience to benchmark this . I'd recommend downloading CPU-z and checking the Memory tab just to be sure you're running Dual Channel if you have two or more sticks of RAM. Depending on where the memory is physically installed, you could actually be running Single Channel by accident - I encountered this today while trying to figure out an FPS issue. Consult your motherboard manual to find out which slots you should use for dual channel to work correctly.
|
|
From personal experience, a .3mhz overclock on an AMD phenom II BE yielded 8-12fps in "heavy load" situations, although that was a thoroughly non scientific survey of it.
|
R1CH, oh god of everything techy... is there a way to automatically set core affinity? Its a bitch manually doing it every time you load up SC2. In the name of Starcraft we pray, Amen.
|
yay rich posts! Actually your findings are kind of neat, how we can salvage that extra fps. Not sure if this will work, but have you tried using a replay? Doesn't the game just take the list of commands and run them again like its a real game?
|
On August 17 2012 12:32 emythrel wrote: R1CH, oh god of everything techy... is there a way to automatically set core affinity? Its a bitch manually doing it every time you load up SC2. In the name of Starcraft we pray, Amen. There are several programs that can set affinity for you on a per-program basis such as Microsoft's own psexec. Keep in mind that although this is recommended often, it only has benefits when using hyperthreading. The Windows scheduler is usually smart enough when it comes to core dispatch that setting affinities for SC2 might be hurting performance of something else (eg xsplit).
|
r1ch,i have a 2500k running at 3.8gz with the stock cooler, if i wanted to go higher would i 'need' an aftermarket cooler to ensure stability? and is it possible to stream in 1080p with a 2500k?
i could probably answer these myself but its 5am and i dont want to get up
|
I dont really understand anything but I read it anyway for some reason. Very interesting probably!
+ Show Spoiler +I like R1CH - he just seems so lifelike.
|
Yeah, RAM differences were kind of bland, for something so CPU dependent.
|
I'm more interested in the RAM bandwidth and it's effect on streaming as moving full HD @ 30fps around has to be pretty bandwidth intensive.
|
On August 17 2012 13:15 R1CH wrote: I'm more interested in the RAM bandwidth and it's effect on streaming as moving full HD @ 30fps around has to be pretty bandwidth intensive.
Ah, fair enough. Yeah, I actually found a fairly easy way to manage it, with an SSD for booting, was to just save multiple BIOS profiles, and just ran through them in order.
It's frustrating, though, on tasks like that, since you have to either have a clean benching install of your OS, or you have to make sure you manually configure processes for each run to be as identical as possible. Margin of error is so damn narrow on RAM testing.
|
I really dig your test, for the following reasons: I have an i5 I have a gtx560ti I have 8gb ram@1600 My cpu is overclocked at 4.4 GHz.
Can't complain when the man is telling me my computer is good for starcraft. Nope.
|
I know very little about tech, but from the very general implications, I can only assume that this is one of the main reasons I can't run SC2 on my laptop on any settings. Core 2 Duo 1.67 GHz but 8600M GT lol...woohoo. Still an interesting read~
|
I have the same specs as you just 8GB ram, never overclocked before but might give it a shot once my warranty runs out and PC is getting a little outdated. Don't really have the need for it atm, although the 15 FPS boost to min FPS does sound pretty huge.
|
Core2Duo ~3.6GHz > QuadCore ~3GHz? Most games don't use 4 cores really good, SC2 the same?
|
On August 17 2012 19:14 Unibrow88 wrote: Core2Duo ~3.6GHz > QuadCore ~3GHz? Most games don't use 4 cores really good, SC2 the same?
Yes, Starcraft II is the same.
|
On August 17 2012 19:35 skyR wrote:Show nested quote +On August 17 2012 19:14 Unibrow88 wrote: Core2Duo ~3.6GHz > QuadCore ~3GHz? Most games don't use 4 cores really good, SC2 the same? Yes, Starcraft II is the same.
It becomes a different issue when streaming though, I'm pretty sure those extra cores come in handy then.
|
On August 17 2012 19:35 skyR wrote:Show nested quote +On August 17 2012 19:14 Unibrow88 wrote: Core2Duo ~3.6GHz > QuadCore ~3GHz? Most games don't use 4 cores really good, SC2 the same? Yes, Starcraft II is the same.
Thats why I'm really happy with my Core2Duo E8400 :D
|
On August 17 2012 19:14 Unibrow88 wrote: Core2Duo ~3.6GHz > QuadCore ~3GHz? Most games don't use 4 cores really good, SC2 the same? All of the processors mentioned in the article are way more efficient than an actual core2duo, skry assumed you were comparing it to a core2quad with similar cache sizes and the same IPC. A 3 gHz sandy or ivy bridge will demolish a 3.6 gHz core2duo in single threaded benchmarks, the days of clockspeed being the only factor were about 15 years ago.
|
On August 17 2012 12:25 R1CH wrote: Disabling Aero gave 5 FPS increase at idle, presumably because the GPU isn't having to render Windows elements.
Only because of windowed mode. Aero unloads if you run a fullscreen app and no fps is lost. Really only matters to people struggling where 5fps makes the difference between playable or not, should never run in windowed mode.
On August 17 2012 12:45 turdburgler wrote: r1ch,i have a 2500k running at 3.8gz with the stock cooler, if i wanted to go higher would i 'need' an aftermarket cooler to ensure stability? and is it possible to stream in 1080p with a 2500k?
i could probably answer these myself but its 5am and i dont want to get up
You'd have to monitor temps as they are now and predict a 10~c increase at least, at anywhere near 4ghz, right r1ch? Can't afford my own i5 setup to do this myself
|
|
|
|