• We should now be fully online following an overnight outage. Apologies for any inconvenience, we do not expect there to be any further issues.

Dual Core/HT, Multithreading and Games

Elcs

Diamond Member
Apr 27, 2002
6,278
6
81
After browsing through General Hardware last night and realising crystal in solution make cpu cold.... then wading through the Software forum, I had quite the thought.

Even though HT isnt exactly an old technology, nor is the idea of a Dual CPU system.... Multi-threaded capabilities could have been exploited in the most obvious CPU-bound games.

In an RTS such as Generals, once you break into the higher echelons of gaming, it becomes more and more apparent that the game is CPU-limited and they have been for quite some time.

My question is not really one of how dual cores will improve the smoothness in RTS games by using the power of 2 cores to handle 2 threads... Id really like to know why some RTS developer hasnt used the Power of HT or dual CPU to increase performance in RTS style games?

Intel, most likely, has more P4 HT's out on the market than AMD (speaking for the basic consumer market + the enthusiast) and we've seen what HT can do for certain applications.... Im an AMD fan and HT has in the past made AMD cry. If HT had been coded for use in RTSes, would Intel not have been the processor of choice for the RTS gaming niche?

Im just looking at this in rather a general view. I have no idea about coding, the insides of a processor and the like. Im only interested in outcomes these days, hence why I base my purchase decisions on my budget and the general view of Anandtech Reviews and Forum opinions rather than flashy buzz-words or brand loyalty.

Any ideas about why this hasnt happened? It seems to me like an oppurtunity lost or missed... since Im *assuming* that coding a game for HT would make something easier to recode for dual core if necessary.

The info from AMD/Intel has been that they are making Processors with 2 Cores on 1 CPU, which fits into 1 socket. That has been known for quite some time.... so, why has no company, whos games are primarily CPU-limited, not taken the liberty of making a game use current technologies such as HT or Dual CPU?
 

Acanthus

Lifer
Aug 28, 2001
19,915
2
76
ostif.org
Because the vast majority of gamers (sadly) are on Pentium 3s and Thunderbirds.

Multithread gaming wont be mainstream for another couple years at least :( although the Xbox and PS3 converts will likely be multithread capable as the consoles will have multicore.

There are a few engines out there that are SMP aware. Quake3, Doom3, Star Wars Galaxies, and Everquest 2 (not positive about EQ2, but they said it would be in a dev conference a while ago).

Edit: Unreal engine 3 is also supposed to be SMP aware (comes out in early-mid 2006), it will also support hardware physics cards (PhysX PPU).
 

stevty2889

Diamond Member
Dec 13, 2003
7,036
8
81
Most likely because it was never cost effective enough to code the games for specific CPU's that weren't commonly used. Because of the cost of dual CPU systems, and the types of motherboards they used, it was not exactly common for them to be used as gaming PC's, and the cost and extra time needed to develop a multithreaded game just for hypertheading also made it pretty much not worth the effort, especialy since the A64 excells in gaming over the P4 in most cases. Once dual core CPU's become the mainstream, it's more likely that games will be developed to take advantage, since single core performance increases are becoming far more difficult to improve.
 

Lord Banshee

Golden Member
Sep 8, 2004
1,495
0
0
Oh yes can't wait for the day with SMP coded games. Too bad it seems that newer games are more GPU limited than CPU. So unless nvidia and ATI do something crazy and break all speed records then i think it will stay that way for at least another year or two. I really think that Nvidia/ ATI would really need to change the way they design the GPUs. Remember that the X800 are still using the basic design of the 9XXX core. But then again if they would do something so amazing no one could afford it too... So i don't see too many games being CPU limited.

But you talk about RTS games.. Wow i could not agree more. What a great way to use CPU power. I hope 2006 RTS games do feature SMP enabled code.. Anyone know if the new Age of Emipires will be SMP.. So reason i think the answer is no because it will be out later this year :(. I want the ability to have more than 200 units and for my unit to do some thinking for themselves.

Anyway I think the best way most games will take advantage of SMP is use one CPU to help with graphics/sound and the other to do phyics/AI. Think about QuadCore, one Core per job : p.
 

Gogar

Member
Apr 15, 2005
63
0
0
AI should be easy to make multi-threaded, it could just interact with the game like network players do. Sounds fair to me as well.. I hate stupid bots that always have an edge just because they are part of the game and know exactly where you are etc. I'd love some more sophisticated AI that evolves from all the games it played against you.
 

sbuckler

Senior member
Aug 11, 2004
224
0
0
Multi-threading is harder to code then single threading, and there is a performance hit for running multiple threads due to the extra complexity of the code (locking, etc). HT only gives a small boost so once you take into account the hit for going multi-threaded it's not worth it. HT was best for managing to smoothly run one cpu intensive task, and one lesser one (e.g. dvd encode while web browsing, playing game while burning dvd), not running one task much faster. Kind of like having two processors but one's a P4 3.2ghz and the others only a P4 500mhz processor.
Multi-core gives you two full speed processors so that changes things. Pretty well every new machine from sometime next year will be dual core so I'm sure game developers are working hard to make sure their games can take full advantage of that, and have been doing so since last year. There's no lack of stuff that can be theaded, the most obvious is the renderer - you could easily run one cpu flat out trying to feed the graphics card with stuff to draw while the other cpu deals with everything else.
 

aka1nas

Diamond Member
Aug 30, 2001
4,335
1
0
As an addendum to sbuckler comment, HT also works best running two threads that require different execution resources(There is still only one real cpu there). Two threads doing AI in a game would be using the same sort of operations and wouldn't be a great fit for HT.