Originally Posted by Cait Sith Cat
if ( (playSupremeCommander == true) || (decodeVideo == true) )
else if ( (playOldGames == true) || (HTPC == true) )
Not all of your branches return a value, that code would return a warning.
I'd venture a guess that about 90% of games right now will run faster on e8400 with the same clock speed as a q6600, given no other apps were running in the background. Due to its increased efficiency.
Multithreading in games is still in it's infancy. There are still no best practices for it. Streaming in content in a seperate thread is fairly common, but things like physics and/or networking are more complicated. Not many engines were even designed with more than a couple of cores in mind, so even with 8 cores the engine will not just say "Hey, found another core to use", it will say something more like "Use core1 for main game loop, and I found a second core so I'll run physics on that core.". What we want down the road, but isn't really working great yet is, "Found 8 cores, I can split the main game loop among 5 of them, physics on another, networking on another, and leave one for the OS just in case", or an engine that will dynamically give more cores to sections of the game that need them most.
Until something more like this happens, quad-core, or oct-core will not mean 1337 gaming. It will mean you can run a whole bunch of other crap in the background, given you're not I/O bound (which would be a good reason for a RAID setup).