Game developers adapt to multicore world

As more and more PCs incorporate dual-core processors into their guts, game developers must rethink their design processes.

From News.com

PC game developers appear to finally be getting the message: the free ride is over.

For years, developers were able to take advantage of faster and faster processors from Intel and Advanced Micro Devices. All they had to do was write their program once, and it would run faster and faster as Intel and AMD cranked up the clock speed.

But overheating forced chip companies to adopt designs with two or more processor cores running at slower speeds, which meant that some applications written to run on a single thread couldn't take advantage of that extra horsepower. This has required an entirely new way of looking at software development, prompting Intel this week to release another batch of software development tools aimed at helping developers make that transition.

Major games take years to develop, meaning that most of the games released around the time that dual-core chips hit the market in 2005 were not built with two lanes in mind. The good news is that developers have found a way around this so far with patches, which alert the game that it has two cores to work with.

The bad news is that releasing patches is only a stopgap solution until game studios sell titles designed with multiple software threads in mind. More and more studios seem to be getting the message, with dozens of major titles in the works for multicore processors. But this is hard work--the abandonment of decades of programming expertise for a new way of exploiting processor power.

"I'd say we're at a 'C-plus' right now," said Randy Stude, director of Intel's game platform office, assigning a grade for the industry's progress toward parallel development. "When the first dual-core chips came out (in 2005), we were at a D-minus."

Intel and AMD have spent significant time and energy urging developers to take advantage of the "low-hanging fruit"--easy ways to make their games more aware of parallel computing. AMD even sponsored a coding competition last year to help drive those points home.

As a result, over the past year, major game studios such as Blizzard Entertainment (World of Warcraft) and Id Software (Quake and Doom) have released patches to make their games multicore-friendly.

But that's not the same as having designed the game from day one with multiple processors or multicore chips in mind, said Ted Pollak, an analyst at Jon Peddie Research.

"It won't give the same kind of performance, but it's going to help, and it's better than nothing," Pollak said.

According to lists supplied by Intel and AMD, just over 25 games are available that were designed with multiple-core processors in mind. One of those games, THQ's Supreme Commander, made its debut in February.

"We feel it's a design choice you have to make from the outset," THQ spokesman Ben Collier said.

Unfortunately, it's not always that simple. Massive PC games are multiyear projects, and many companies are reluctant to tinker with code that has been well received by the public. Some developers are working on just a single game, while others are creating game engines that will power several games.

One company thinks that it has a product that can help alleviate the long nights spent coding for multicore chips. "It's a way to continue to use serial programming but achieve a parallel approach to data parallelism," said Ray DePaul, CEO of RapidMind.

Most of the work on the RapidMind development platform has been for IBM's multicore Cell processor, but the company is working on tools to support multicore x86 chips from Intel and AMD as well, DePaul said. Developers use an API (application programming interface) to write their application, and the platform figures out how to distribute the load across multiples cores.

A company called PeakStream has a similar product that can let developers plunge right into the multicore world.

Intel thinks that developers might as well just get used to the parallel world, however. Soon all PCs will have at least dual-core chips, with quad-core desktop chips already available from Intel and coming later this year from AMD.

Console games appear headed in that direction as well, Stude said, given the use of multicore chips in the PlayStation 3 and Xbox 360.

"The learning curve is becoming less and less to get threading work done," Stude said.

130 Comments

  • cjcr_alexandru

    Posted Apr 23, 2007 8:58 am PT

    They'll get over it. It's just a matter of time.

  • cardiac_cat

    Posted Apr 13, 2007 9:55 am PT

    PC gaming is so last year!

  • cardiac_cat

    Posted Apr 13, 2007 9:50 am PT

    Developers have no choice but to keep up with the times, or else get out of the business.

  • elfboy69

    Posted Apr 13, 2007 5:12 am PT

    why do people think that ps3 has two or more cores.It has one and 7or 8 dps cores wich just do math.the dsp cores are no where nere the same as the genral processing core.360 has 3 GPP cores that all work the same.DSP cores mean nothing in gaming othere than math.Why do you think that it has 7 or 8 of them on one die.they are there for math.Im sure if you had the right software you ps3 could tell you what the weather was going to cuase that is what DSP cores are form.there for ps3 has one core not two not three or 10 just one.

  • rockyds

    Posted Apr 13, 2007 4:08 am PT

    Considering the fact that the xbox360 and PS3 are multicore systems, it is now mandatory for all developers to get multicore programming knowledge. Its is pretty reasonable to expect all the game releases now to support multi-core processors

  • matrixman2k

    Posted Apr 12, 2007 5:45 pm PT

    Major developers are a lazy lot, they employ a careless ‘if it’s not broken, don’t fix it’ attitude. Their motto is to use the least in development/production and to maximise profit. They don’t care about trying to use the maximum cores and power available to them or their customers/gamers or whatever.

    Anyway after I heard of the 8 core intel chip with HT (so that’s 16 logical core) I thought to myself ha. ha. ha.

    It’s only a matter of time till we’ll be able to emulate PS3… I remember when the CELL was unveiled, my work colleagues were saying that to play next-gen games you have got to invest in a PS3. And PCs days are numbered, how wrong they were!

    If AMD get their idea of streaming process, about integrating a graphics core on the CPU (probably why they purchased ATI) from paper/theory to actual product that would give a hugh boost to performance specially to video/movie encoding editing etc. etc. according to them, in some interview i read somewhere...

    Shame intel now say they will do something similar including; integrate memory controller to the CPU (AMDs been doing for ages). Still it’s all good, anything that motivates them into researching/developing and overall delivering better products. Ultimately we the consumers can only gain – and not forgetting the competition bringing down the prices as well. [I’m going on a bit now…maybe it comes with old age]

  • StanBlocker

    Posted Apr 12, 2007 3:22 pm PT

    Its just a matter of understanding how it all works and adapting the design process. Give a year and we will see all sorts of new stuff cropping up on multi core systems.

  • Somini

    Posted Apr 12, 2007 2:38 pm PT

    It's just as DarmOk and mismajor99 said. Single-core and XP are things of the past, go with it, or stop playing PC games.

  • luckjon

    Posted Apr 12, 2007 2:20 pm PT

    Maybe CPU companies should develop easier ways to do multi-core. Like an unified CPU core group that shares the whole load of processing instead of two seperate cores doing two different things, which requires money to do.

  • playwrite

    Posted Apr 12, 2007 2:00 pm PT

    nothing will ever make programming 8 processors easy. 2 i can see. bu 8. thats just insane. its interesting that sega was using dual core over 10 years ago with the saturn and actually lost out over it (not that they didn't have other problems).

  • gatsbythepig

    Posted Apr 12, 2007 1:46 pm PT

    We've been on this path for quite some time now. I am not surprised at all. Go multicore!

  • mismajor99

    Posted Apr 12, 2007 12:34 pm PT

    Darm0k,

    Exactly what I was thinking. Intel Core 2's are selling like hot cakes, and if you ordered a new PC in the last few months, you most likely have one. This summer, AMD is rolling out their 8 core (2 Quad Core Chips) chipset to try and give Intel a run for it's money, which is dominating the market right now. Also, by the end of 2007, no PC's will have XP pre-loaded no matter where you go, which also means, PC's will come standard with much more RAM(512mb ram is history!), most likely 2 gigs will be the norm, further dropping the price of the components. When it's all said and done, by the end of the year, a person will only have to upgrade their GPU to ultimately have a decent gaming system that they otherwise wouldn't have under XP. If anything is positive about Vista, it's the higher reqs that are actually helping average consumers, who wouldn't know what they are getting in their system to begin with. I see massive price drops on just about everything in the not to distant future. AMD is already doing it now.

  • cduran

    Posted Apr 12, 2007 11:45 am PT

    @tenorlo_rotc

    Yes the Cells multicore IS different, each of the cores are specialized to do computations that are multimedia/gaming specific. This is much better than having multiple general purpose cores (at least for a game console).

    Think of it this way....What would be best at rendering graphics? A video card made with 4 multi-purpose CPUs? or a video card made with 4 graphics processors?

  • Darm0k

    Posted Apr 12, 2007 11:37 am PT

    Gotta love people who have no idea what they're talking about discussing whether multicore is a good or bad thing.
    The limits of single cores have pretty much been reached.
    All (ok maybe not ALL but a very high percentage) new processors being designed for the PC market are going to be multicore. Everyone's next PC, unless they get it at the $199 computer store is going to have a multicore chip in it.

  • tenorio_rotc

    Posted Apr 12, 2007 11:19 am PT

    Well Sony's multicore system is different. The SPE's don't have the same power as the main processing unit and it is dumb to have that be the case if developers are working with equal cores like those in the 360 and all multicore PCs.

  • KamaKase

    Posted Apr 12, 2007 11:16 am PT

    Wow....the person who wrote this article doesn't actually seem to realise how difficult it is to write a game, single or dual core. "Free Ride"!?? Gimme a break.

    Not enough people have multi-proc PCs to make it worth while writing the software around that architecture.

  • sdkingsht

    Posted Apr 12, 2007 10:56 am PT

    funny how a few months ago everyone was yelling about how sony was stupid and would fail because it had a multi-core based system. what do you know? now the whole market is headed that way. lol. oh and bluray is outselling hddvd 3 to 1 on the market. people who are missunderstood or ahead of the curve are always criticized by the people who are too small minded to see beyond the obvious. Gotta spend money and take risks to make money and be #1. that's why the ps3 will again be the market leader. i have a wii and am already growing tired of it and bought a 360 for some of their exclusives but love my ps3 hands down. and the game library is finally getting better week by week.

  • acer_Uk05

    Posted Apr 12, 2007 10:50 am PT

    Multi Core processors are just the natural route for further developing CPU technology. I think its OK for games to make use of multi core CPU's if it increases performance, but im sure developers are aware that the majority of the desktop owners are still runnin single cores so they wont make it a determining factor to run the game. My old AthlonXP 2800+ (768ram with GF6800gt) runs everythin i'v purchased in the last 6 months on either medium or high and im sure that'l change in the coming year (DX10), but i think, especially over the last 3-5 years, the Graphics card has been the most important performance factor. I started with a 9600 a few years back and uprgraded the card every 18 months (spending around £100; $190), and iv been able to play my favourite (new) games on med to high settings. Cheaper than getin a new rig too

  • bobreturns

    Posted Apr 12, 2007 10:25 am PT

    i need to get one of those dual core things

  • HoxtonHer0

    Posted Apr 12, 2007 9:35 am PT

    coolz.

  • LoJo10

    Posted Apr 12, 2007 8:58 am PT

    All this upgrading is dumb, I think. I mean, Vista? And now making games for multi-core processors? I guess in the long run it is better to start working on it now, but because games are so expensive to make, and that they take so much time, is this ultimately really worth it?

    What I'm wondering is when will pretty much everyone who has a PC, when will everyone, and I mean everyone have a multicore PC?

    Because my amd 3800, 7300gt, and XP run all the games I play - older games. Also the average consumer? Cause I'm keeping my PC for the next 4 or 5 years before upgrading to vista or buying a new PC. How many people who have computers want to go out and spend more money on something that will be obsolete? I don't know....

    I guess ultimately it will be a good thing for PC Gamers.

  • therealFrek

    Posted Apr 12, 2007 8:53 am PT

    Why all the console vs PC comments?

    Anyways, I personally find that console games are geared to a much younger crowd and/or people who don't have much technical savvy and just want to plug a disc in and play.

    The games I like to play just simply don't work on consoles. For example MMO's, story-driven RPG's like BG and NWN, and Oblivion with mods like OOO. I know Oblivion is available on the XBOX but you cannot mod the game in any way, plus add the fact that my SLI system probably triples the performance of what you get on an XBOX.

    I don't see a reason to buy a console, there isn't a single game out there that appeals to me that isn't available (and plays better) on my PC.

    Something else you can add to the argument is that when a game is multi-platform they have to tone the game down to meet console specs, which usually means a neutered PC version.

  • jordanbijl

    Posted Apr 12, 2007 8:34 am PT

    People keep mentioning quad core... does this mean were ready for yet more upgrading? this is getting rediculous...

  • miiiguel

    Posted Apr 12, 2007 8:25 am PT

    Can't stand office-desk gaming! Not in a million years my gf would let to transfer the office to the living room.

    PC => work; study.
    360 => Play.

    Nuff said!

  • Enginwolf04

    Posted Apr 12, 2007 8:19 am PT

    Guess it's time to purchase a new computer. My old Dell Dimension 4500 (5 years old!) has got some serious mileage on it and I could use a quad-core computer to reinvest some time into computer games. The last computer game i played was Unreal Tournament 2004. That was a long time ago. Anyone got pricing on quad-core comps?

  • mismajor99

    Posted Apr 12, 2007 8:17 am PT

    "epormada

    Consoles are actually ahead of the PC in this area! Finally, because playing games sitting at a desk sucks!"
    ----------------------------------------------------------------------------------------------
    They are far from ahead. It doesn't matter how many cores you have, it's the RAM. The 360 and the PS3 lack in RAM that is essential to fully utilize the cores. I would rather have 2 Porche's than 7 Hugo's. Get my point? PS- You don't have to sit at your desk, I have mine hooked up to my 42" HDTV.

  • Phazevariance

    Posted Apr 12, 2007 7:57 am PT

    Interesting... and good.

  • gbrading Site moderator

    Posted Apr 12, 2007 7:48 am PT

    At last, the games industry has woken up. I've had a dual-core for 14 months, and it's been good, apart from the fact that several games have been malfunctioning (but that turned out to be the graphics cards fault). It's just irritating having to manually set the affinity of older games, so they are only playing on one processor. 'Performance issues' AMD calls it.

  • Somini

    Posted Apr 12, 2007 6:50 am PT

    This is such great news for me since I have a dual-core processor and have been thinking about getting a quad-core. Developers might think that this will be a little bit difficult in the beginning, since they're used to single-core, but in not too many years, every console and every PC will have multi-cores, so they just have to get used to it. It's evolution.

  • Manatassi

    Posted Apr 12, 2007 5:37 am PT

    rahstar manyof those games are rubbish or not out and this is an article about something completely different, anyway. Developers are just going to have to get used to programming for dual core. yes its harder but so is every new process that comes to games development when it first happens.

  • chrisdojo

    Posted Apr 12, 2007 5:21 am PT

    it will be interesting to see what the developers can do with multicore chips to improve technical aspects of games...

  • theKSMM

    Posted Apr 12, 2007 5:08 am PT

    Back to the topic of the article, parallel programming is hard and error-prone. Most companies these days start with some existing code base and build upon it. Re-using game engines is a well-understood example, but developers will quickly pull mature code from previous projects before re-inventing the wheel.

    In addition, lots of code is licensed from third parties. This means that until the Unreal Engine or Havok physics library start using multiple threads of execution, it may be pointless for me to start doing it in my own code that links to single-threaded non-reentrant code. So there's a baseline that has to be moved across several semi-independent units in order to move the industry forward en masse.

    Interestingly, it seems as if those third-parties may be the solution to the problem that they're helping to perpetuate. If somebody can make an easy-to-use library of code that makes parallelism easier to implement across multiple platforms, he stands to make a lot of money.

    Programming games for PCs is hard enough with the countless number of configurations that must be supported. Now if you implement support for multiple cores, you still need to consider your single-core audience. And things get even trickier if you have aims on porting to various consoles. It's no wonder that developers have avoided this new style of programming for as long as possible.

  • Mauller

    Posted Apr 12, 2007 4:35 am PT

    What do you do rahstar, go to any topic related to ps3 and post a list of games so you don't feel so bad for supporting sony? Seriously, get a life and relax. People will buy the system they want for the games that they want just like you will. So posting your little fanboy list isn't going to sway anyones opinion. All 3 are great machines in their own ways.

  • chickenoverlord

    Posted Apr 12, 2007 2:15 am PT

    you forgot resident evil 5...
    personally still prefer the 360 _currently_ tho... (and i've got the big 3)

  • rahstar

    Posted Apr 12, 2007 1:51 am PT

    PS3 GAME SELECTION TOTAL CRAP HUH

    Afrika Angel Rings Coded Arms: Assault DC Universe Driver 5 Eight Days Eye of Judgment Eyedentify Fifth Phantom Saga Final Fantasy XIII Final Fantasy Versus XIII God of War III Gradius 6
    Gran Turismo 5 Heavenly Sword Hot Shots Golf 5 Jak and Daxter: The Lost Frontier Killzone L.A. Noire Lair LittleBigPlanet Metal Gear Solid 4: Guns of the Patriots Monster Kingdom Ni-Oh Ratchet & Clank: Tools of Destruction SingStar SOCOM
    Tekken 6 The Getaway 3 Uncharted: Drake’s Fortune Warhawk White Knight Story WipeOut

  • RavensClaws

    Posted Apr 11, 2007 11:20 pm PT

    The big problem "I see" atm with the PS3 is that with 7 cores to program most game designers won't be bothered to fully utilize all of them. Also the lack of memory seems to be a big problem, 256kb per SPE, as opposed to 2048kb on a modern Intel Core 2, which means there seems to be an innate limit of 256kb on SPE code making it even more difficult for programmers.

  • epormada

    Posted Apr 11, 2007 10:16 pm PT

    This is totally off the subject, but does involve new tech! I want that helmet - controller that picks up on electrical signals emitted from your brain! I can't believe it's really coming out next year and it's gonna be cheaper than a PS3! Sounds reasonable with the proper support! *Glares over at George Lucas then goes to follow white rabbit*

  • Redsyrup

    Posted Apr 11, 2007 10:08 pm PT

    From what I've gathered the PS3's bottle neck is in its RAM not it's processor.

  • dracos9000

    Posted Apr 11, 2007 10:01 pm PT

    Just got SupCom today had no idea it was multi core ready. I barely upgraded to multi core a few months ago.

  • zsc4

    Posted Apr 11, 2007 9:12 pm PT

    Well all this mess is cleared up, they will suffer another problem...its the system of life

  • bihboy69

    Posted Apr 11, 2007 9:11 pm PT

    cant wait for mgs4, which will use all of the ps3's processors

  • epormada

    Posted Apr 11, 2007 8:29 pm PT

    Consoles are actually ahead of the PC in this area! Finally, because playing games sitting at a desk sucks!

  • Symphonycometh

    Posted Apr 11, 2007 8:17 pm PT

    I wouldn't have cable if not for Anime. Lol.

    Note:

    Bashers are in for loooong argument.

  • wildsnipe

    Posted Apr 11, 2007 8:10 pm PT

    Thx dude. Loved Azumanga Daioh too. LOL

  • Symphonycometh

    Posted Apr 11, 2007 8:05 pm PT

    @Wildsnipe:

    "Bad kittie! You can't bite Miss Sakaki! See. You have to know how to handle cats like that!" lol. Just your pic.

  • wildsnipe

    Posted Apr 11, 2007 7:48 pm PT

    PS3 also demands a steep learning curve for devs too even with the release of Edge. Devs are gonna have to step up to create games for the Cell which is why most PS3 games aren't top notch. Devs know the Tri core architecture of the 360 like the back of their hand now, its been a year and games like GeOW, Bioshock, and Mass Effect show it. Too bad its not quad core or the 360 would be a beast, but more difficult to program for.
    This is all good though, through natural selection of game devs and games, a new era of AAA games will arise from the new programmers.
    To Good Games through the harsh reality of Technical Geekism

  • Symphonycometh

    Posted Apr 11, 2007 7:48 pm PT

    @__@ The mess?

    Someone please be kind and summarize all this into a 17 year old's understanding!

  • gamewhat

    Posted Apr 11, 2007 7:43 pm PT

    kaziechameleon yeah mutlicore threading is hard, yet devs had siad how easy the transition was for 360 developers, yet there have been many remarks in the oposite direction for sony, they have more processors but that isn't the problem, it's the dev tools suck, a very sony tradition.

    -------------------------------------------------------------------------------------------------
    Cmon kaziechameleon have you ever made a game or even know how to program? You my friend are behind the times, times have changed. Look it up and educate yourself in the beautiful art of game development...LOL. Please know what you are talking about before jumping to conclusions, makes you sound stupid, even though your probably not.

  • lightningbugx

    Posted Apr 11, 2007 7:14 pm PT

    Multi-core may have a lot of power potential, but there are problems in maximizing performance. The problem in getting the most out of multi-core systems is equivalent to working around performance loss caused by decision making systems such as AI.

advertisement

Hot Stories

Newsmakers

Featured Stories

Submit News

Got tips? Send them in!