Jump to content

What games are optimized for x2?


yzrider088

Recommended Posts

I have just installed a fairly new x2 system, and it seems that no games are optimized for x2. The Call of Duty 2 patch wont even install. No games I have seen even take advantage of the second core, and in ALL cases, when i turned off the second core in cpu affinity, i get no fps loss. I play hl2, doom III, cod2, bf2, quake4, f.e.a.r, dod:s, cs:s, nfs:mw, ut2004. I am running x64 windows, and when will x2 be supported? Is there a timeframe when everyone will take full advantage of x2? Thanks a lot

Share this post


Link to post
Share on other sites

I cant give any definite answer but im pretty sure cod2 and such do already utilize (maybe not to max potential) the dual core cpu as they are multi-threaded software progs. I know that both my cores are active when playing cod2, bf2, nfsmw unless I specify otherwise.

Maybe you don’t notice a decrease when setting affinity to one core because the games not that cpu demanding ( I use about 60% when using both cores) I monitored this on a dual monitor setup through task manager.

 

So to me multi-threaded software works better on a dual core since all resources are dedicated to the thread on the core giving the thread its own L2 and such. It seems all the software (games) I play are multi-threaded software.

 

Im sure there will be more improvements in dual core utilization but its working now

:)

Share this post


Link to post
Share on other sites

I thought multi threaded software was designed to run on dual cores (such as servers back before desktops where available) and the first experience i had was with htt from Intel which allowed two threads to be processed by one core, both threads using same resources.

 

So with my x2 im giving both threads there own core,(own L2) that should count for something in higher cpu demanding processes? Compared to a standard amd cpu which only process one thread at a time. Im sure threes more to it but im a simple man

 

 

:shake: :shake: :shake:

Share this post


Link to post
Share on other sites

it really isn't as simple as some might think

 

load up CoD2 and use the patch to optimize it for Dual Core (SMP) cpu's

 

watch the performance drop below single-core cpu

 

 

then install Quake4 and apply the patch (mebbe still beta) that is for SMP/dual core, and watch performance jump about 40% or so.

 

multiple cpu's doesn't mean anything other than more than one cpu. Software that runs on Pentium4 with Hyperthreading is not the same type of optimization as true SMP cpu's like dual core and dual processor configs.

 

Well, I suppose it is in a sense, but none of it is truly optimized for dual processors.

 

Photoshop, Vegas, pretty much anything Adobe or high end editing software for photos, movies, music, 3d rendering, etc, is optimized for dual processors (or multiple processors).

 

games on the other hand....still tend to be optimized for single core cpu's since the majority of computers used for gaming are still single core or only P4 Hyperthreaded.

Share this post


Link to post
Share on other sites

So are you saying my x2 uses async processing like htt? I thought x2 uses symmetric processing? True multitasking, as in the smp u speek of.

 

EDIT= never mind i didnt read your post properly the first time...lol

 

Well anyways im sure there will be more utilization of the second core in the future

:):):)

Share this post


Link to post
Share on other sites

Most games are written using a monolithic design approach with a single main loops that does all the rendering, AI, and physics each time through.

 

It uses the system clock to determine how long its been since the last time through (dt if you are into math), and the runs the "physics" to calculate where the actors and objects have moved to, if at all, based on their current velocity, forces acting upon them, etc. Once it knows where everything is in the current cycle, it renders them, calculates sounds etc, and moves on to the next cycle.

 

Obviously its much more complex than that, but you get the idea

 

Trying to make a design like that multithreaded is tough. Certain aspects can be drawn out, but those are usually very small parts which won't make a huge difference. To be truly SMP (which most current x86 platforms are), you would need to split things like physics into multiple threads.

 

The hard part about doing that is keeping all the data intact and correct. You can't have two processes writing to the same data structures at the same time, since they usually base their computations off that same data, and any processing done currentently between two interacting objects will be lost on the other.

 

Its very hard to do that efficiently, but it can be done. Most game programmers aren't used to doing things with mutual exclusion in highly threaded environments, so it will take time for games to actually make efficient use of the new architectures. Once the switch does happen, the new paradigm should allow for any number of cores. However, you will always have diminishing returns by adding new cores. So don't expect an 8-way system to be 4 times faster than a 2 way. A good hardware and software implimentation (IE: very good cache coherencey algorythms or no cache at all like the CELL) will ultimately affect your milage with additional cores.

Share this post


Link to post
Share on other sites

An easy way of seeing what Angry is trying to say is this...

 

 

Example...

 

Seti@Home..

 

When the commandline Seti@home client was run on a single core CPU it used 100% when processing... Now if you used the same app on a dual core CPU you will see both cores run at 50%. if you set the affinity to just one core that core then goes to 100% and the other is idle.. you can then load another instance of Seti@home onto the other core..

 

This was before they changed clients of course..

 

Its the same with games... the load will be split between both cores, because thats how the OS handles it.

 

We had a Quad Xeon server we was testing back in the UK doing four sets at once.. one on each core.. that thing was a seti farm for like 2 months till we was sure it wasnt going to crash..

 

I miss that server... sigh

Share this post


Link to post
Share on other sites

When the commandline Seti@home client was run on a single core CPU it used 100% when processing... Now if you used the same app on a dual core CPU you will see both cores run at 50%. if you set the affinity to just one core that core then goes to 100% and the other is idle.. you can then load another instance of Seti@home onto the other core..

 

Ok so when a cpu is top out using 100% it can do no more correct? :nod:

 

so that app (any app) that shows a 100% dose not mean thats all the processing that app requires, only whats available.

 

Using your example of maxing out my cpu with one core doesn’t mean that on two cores it would stay at 50% (unless its a specific bench or something, im speaking on games) it could go up to 60,70,80% now that it has the available resources.

 

Plus the increased speed of using separate resources for each thread, in a sync fashion Which should increase performance over Intel which uses one core to process two threads in async using on set of resources such as l2 and fsb.

 

So yeah i guess if your running tron and it doesn’t max out your cpu... :nod: :nod:

then dual core would not do much. But when im running cod2 i use about 60-70% of cpus (both cores) if i set affinity to one core I think it would max it out that single core and inhibit some processing.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...