Multithreaded gaming coming any time soon

bmadd

Distinguished
Jan 27, 2007
151
0
18,690
i know there are games that take advantage of 4 cores such as supremem and WiC but im more talking about mainstream and if there are links to any websites(current!) that know this. i have googled and only get early mid 07 talk about it

sry if this is the wrong place bu it is about pc gaming.

thanks B Madd
 

rayzor

Distinguished
Apr 24, 2004
353
0
18,790
Crysis has to be the most notable game to take advantage of multi-core setups. In the coming months and years, more and more games will take advantage of multiple cores. I'm willing to bet that a year from now, most of the games slated for release will take advantage of multiple cores. You won't see a whole heck of a lot in terms of clock speed gains anymore, and the cpu manufacturers will really begin to push dual/quad/octa core processors. (they've actually been doing this for quite some time).
 
Yea, at least a year from now. And maybe by then Intel and AMD will actually have cpu/gpu setups thatll make have more than 2 cores worth it. My problem is, they spread it all over the net that Intel and M$ is giving 20 million for future multithreaded research to be done. Thats not even the cost of making 1 good game. What a joke this is. Good PR, poor commitment
 
G

Guest

Guest
I beleive the Unreal Engine 3 is multithreaded, so games using that will take advantage of multicore processors (ie, UT3, Bioshock, etc)
 

firebird

Distinguished
Nov 13, 2004
516
0
18,990
I noticed that when I'm running the Crysis benchmarks I never exceed 65% CPU usage. I wonder if that's because my video card is limiting?
 

rayzor

Distinguished
Apr 24, 2004
353
0
18,790


wouldn't be suprising. and you have to look at it at the right time to see it spike. Plus,based on the taskmanager, 65% is quite a lot of processing coming from a quad core.
 

firebird

Distinguished
Nov 13, 2004
516
0
18,990
Just to clarify, I'm using a dual core, and on my 2nd display I have speedfan running. I was watching it the entire time for CPU usage (thos benchmarks get boring) and it never went over 65%. 3dmark06 CPU test loads both cores to 100%.

I just wish my games would use all of my system. That's why we build 'em right?
 

BigMac

Splendid
Nov 25, 2003
5,636
0
25,780


Well that's why we call it performance bottlenecks. In this case it is your GPU that is the bottleneck. If you would have gone over the videocard tests that have been published on the net lately you would know that Crysis does not run that well on a 3870x2, which is why the gap is a lot (35% on both cores). You didnt mention at what resolution you're playing the game but especially at higher resolutions the game takes much more kindly to Nvidia cards. I don't think there's any video card out there that would make the CPU being the bottleneck again at this time (again depending on which resolution you want to play the game) but 35% underutilization is a lot.
 

JeanLuc

Distinguished
Oct 21, 2002
979
0
18,990


The developers have said it will take advantage of 4 cores but in reality most gamers have found it will only use 3 cores at most. The best example of a properly coded game that uses multithreaded CPU’s is Unreal Tournament 3.
 

BigMac

Splendid
Nov 25, 2003
5,636
0
25,780


If you look at firebird's example you can see that crysis is doing very well in that department, utilizing both cores not higher than 65%. If Crysis would not be optimized for multi-core, then you would see a single core going much higher while the other would be utilized at a much lower percentage.

The interesting thing for me is this: will a good optimization for 2 cores also lead to a good optimization for 4 or higher? Depending on the chosen strategy it will usually lead to better performance on quad and higher as well but as long as this is not really taken care of automatically (by the compiler) you will see huge diversity in performance between games (those that understand multi core programming and those that do not).

On a related note, I wonder how much work it is to get a game written for the Cell processor (PS3, asymmetric cores) optimized for PC (intel/AMD) multi-core, which are symmetric architectures. Any thoughts on this?
 

BigMac

Splendid
Nov 25, 2003
5,636
0
25,780
Afterthought (again I cannot edit my own post after submitting it): I can see how introducing multi-core will actually help console gaming because over time you will see better and better understanding on fully utilizing the architecture, and thus you will see gradual performance increments over time on the consoles. For PC users this is more frustrating because when you buy a new system you want to see it used as much as possible as well. Consoles will need a minimum lifespan of 5 years (is this correct?) while without upgrading a gaming PC will not last for more than 3 years at the most.

 

firebird

Distinguished
Nov 13, 2004
516
0
18,990
All of my comments are based of a resolution of 1920x1200.

I've heard that DX10 and/or 10.1 is geared to run better on a single GPU, and that multiple GPUs usually hinder performance. Is there any validity to this? I just assumed it was because developers haven't learned all the ins and outs of it yet and just needed time to optimize.
 

BigMac

Splendid
Nov 25, 2003
5,636
0
25,780
As a general statement this is not true. I have seen one test setup somewhere where they tested SLI and CrossFireX configurations and for one particular game (Crysis) they saw an optimum in 3 GPU's with actually reduced performance with 4 GPU's. The testers were highly surprised by that outcome and blamed it on a possible bug in the CrossFireX driver.

There is no linkage between multiple GPU usage and DirectX10 as far as I know. If you see the performance figures for the NVidia 9800 X2 for instance on Crysis you can see that SLI is doing very well in that game (also for other SLI configurations btw).
 

firebird

Distinguished
Nov 13, 2004
516
0
18,990
Doesn't the O.S., in this case Vista, control the use of multiple cores to an extent? So if I have a few apps open but none have a specific affinity set, will Vista choose the core/CPU to execute on?

I've noticed that during Crysis benchies, core 1 on my system is fully utilized, while core 0 is only partially utilized. I currently do not have a tool that displays usage per core, just overall usage with graphs indicating the level per core. GPU usage is typically bouncing around 90-100% as well (both cores?).

So looking at the system from my point of view, I see 100% utilization on core1 and about 15% usage on core0. How much of this is under control of the application vs. the O.S.?

I'll have to look into this more when I get home, to look at other apps that might not be GPU bound. Very interesting though.
 

BigMac

Splendid
Nov 25, 2003
5,636
0
25,780
I'm not a Crossfire expert but I'm sure that the load is pretty much distributed over the two GPU's. Either the two GPU's compute different frames or they compute different parts of the screen (of course that does not always guarantees an equal load but on average it does). If there's a monitoring tool for the two individual GPU's, use that to monitor the activity.

Regarding the OS controlling the cores.. the OS does the administration of all processes and threads. How the best load distribution is done cannot be determined by the game only because there may be other processes active.

There are ways to force a particular thread to a particular core but this is typically bad programming because one should not assume full control over all resources (but then again, for a game it usually does take up most resources). The challenge is to make enough threads that make sensen and do not have to wait on each other to finish all the time. Then the OS can balance them over different CPU's. Btw, a heavily multi threaded game will probably run worse on a single CPU system...