Jump to content

Will CMx2 ever support multi-cores?


Recommended Posts

This is from the outside looking in, but my understanding of the multicore issue is as follows. The advantages to be gained by recoding the engine to run on only two cores are quite small, it barely breaks even at four cores from an effort standpoint. And since the customer base is nowhere near to being dominated by four core machines, it's going to be a while.

It is my personal opinion that the real, order of magnitude level, performance improvement will come from offloading some things to the graphics processor instead of the CPU. LOS and LOF checks for instance are inherently suitable to being run on a highly parallel system. Which is basically what your graphics processor is. Unfortunately hardware and software support for this is even farther out than universal four core machines. You have to remember is not a question of what can be done, but what have most people already bought, in terms of system specs.

Link to comment
Share on other sites

So how do I get my machine to run CMx2 better? Graphics card? Ram? What? Because when Normandy comes out I want to have massive battles again, and my current system, despite being dual core and being able to run such games as Mass Effect like a charm, struggles with CMSF at times, since it's treating it like a one-core machine.

Link to comment
Share on other sites

the first and most important thing seems to be a detailed look at your video drivers. CMX2 to seems to be quite sensitive to obscure video card issues. I have only recently resolved my own mess in that regard.

The game is a 32-bit executable so I don't think going past a couple of gigabytes of RAM really has all that much effect either. I do think that hyperthreading significantly influence games speed. Since it essentially speeds up the core that is being utilized.

Obviously a higher processor clock rate is also helpful.

A more powerful video card is also quite useful, subject to the above mention of subtle little problems, it is literally worth trying to get a firm confirmation that the card you want to buy runs the game well. That little – a at the end of a 32 character long serial number can really matter.

Last but not least, and in reference to my own troubles, if you're buying a laptop be absolutely certain that it uses standard ATI or Nvidia drivers. My laptop's drivers had some odd little customization from the manufacture, and the manufacturing question hadn't updated them in two years. But there's a whole thread on that in tech support if you care.

Link to comment
Share on other sites

Or is the engine irreversibly incompatible with them?

It will, but when that happens, it will likely also mean that the game won't run on single cores in any reasonable way. Single cores still make up for a fair share of the total market, and wargamers tend to have crappier machines than market average.

Such as Apples...

Link to comment
Share on other sites

Steam do a monthly survey:

http://store.steampowered.com/hwsurvey/cpus/

Last figures for that show only 11.22% of users left on single CPU - and even that is falling fast. Of course general Steam users may be ahead of CM users :). Within CM WW2 long life of release(!) and modules this will surely decrease to a very small number of single CPU users.

It is irritating that my 1 year old quad core 4gb RAM Windows 7 machine runs CMSF no better than my 5 year old XP P4 3.2 machine. Nearly all other games run better.

A new game coming out in 2011 should really support multi cores - that is what the vast majority of gamers will be using through it's life.

Link to comment
Share on other sites

Steve made some comments in the recent past to the effect that updating the CMx2 engine to run on dual cores would result in only a marginal performance increase; it's not until quad core (and potentially more) that there would be substantial potential performance increases.

So I don't expect BFC to do the considerable work of updating the engine until a larger percentage of CM gamers are running quad-core or better machines. I'd wager this percentage is pretty small right now -- as previously noted, multi-core adoption amongst CM's "wargamer" demographic probably lags somewhat behind the gamer community as a whole. But it's sure to increase steadily over the next couple of years as more and more people phase out old rigs and upgrade to multi-core machines.

Given BFC's small coding staff of 2 (100% increase over the past year!), they will probably need to virtually stop code development on new games based on the CMx2 engine (though not necessarily less code-intensive modules) for several months in order to do the multi-core update. They'll have to do this eventually if they want the game engine to stay current, but economically speaking, it probably doesn't make sense for them to shut down the production line and do such a major overhaul just yet. Soon, but not yet...

Link to comment
Share on other sites

I may be out of sate re the state of the art, but a year ago I was advised to get single core if the machine was to be used for primarily one purpose (that is not multitasking several programs simultaneously) as that would be faster, or at least no slower than the more expensive multicore machines.

If you are NOT multitasking what is the advantage of multicore?

Link to comment
Share on other sites

Hyperthreading won't do a thing if sofware is single-threaded. Multi-threaded software will still run fine on a single core, but the amount of work to get it there is huge and is much better used elsewhere, for stuff people actually care about.

Edit: Multi-core is very advantageous to single tasking if and only if that task is multi-threaded, for example if LOS checks are in a different thread from AI.

Link to comment
Share on other sites

Correct, a multi-core computer won't really be all that much faster than a single core (MHz for MHz) for things which are not written to take advantage of more cores. On the whole, however, running multi-core computers with a mix of software concurrently is likely to do better than a single core.

This reminds me of when Apple made the transition from old Motorola technology to the PowerPC. Until the OS and the apps were written for the PPC architecture the only real advantage was the higher clock speeds.

Now, as has been said already... the game engine was coded with multi-core support in mind. Which means it can be added without too much disruption to prior work. The problem is that adding support multi-cores is STILL a lot of work. Kinda like how the game core and multi-player engine is written in a way that could allow 32 vs. 32 concurrent player games, but it will probably take the better part of 1 year to make it happen. The advantage is we don't have to spend 2 years for that + a core engine rewrite.

Steve

Link to comment
Share on other sites

:D

The point is the core game engine can handle any number of players, in theory. I used 32 vs 32 because I can't even conceive of making a game with that many players :D We would probably be more like 12 vs 12 simply because there wouldn't be enough units to command AND still have the game's frame and data transfer rates still work.

Now, there are tons and tons of practical problems that exist outside of what the game engine can technically handle. For example, can any one CPU hand out data to x number of people and not get out of synch? Can VOIP chat work with x people concurrently without slowing the game down? Stuff like that.

My point is that the game engine has the necessary hooks that when we do find the time to go for more than 1 vs 1 we can, in theory, make the game handle a lot more than just 2 vs 2. But all of that theory needs probably a year to become reality, and absent a military contract we will likely not have enough repayment on investment to hire a third programmer to make it happen. There's other things we could do with that investment that we know would pay off much better, which of by definition means making you all much happier since customers vote with their wallets :D

Steve

Link to comment
Share on other sites

A reasonable estimate of what might be first of all capable of being accomplished by Battlefront and also useful to the community would start with something along the command teams concept I would think. Two to four people per side would be pretty cool and might just fit in those parameters Steve-o mentioned above.

Lots of nice toys for everyone to play with and then BLOW UP!!! :eek:

;)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...