January 10th, 2010

[Interview] With AMD Richard Huddy in DirectX.11 game development

Computer Hardware & Software, News, by brigs.

We sat sat down with AMD’s World­wide Devel­oper Rela­tions man­ager, Richard Huddy, to dis­cuss all things devel­oper, DirectX 11, Eye­fin­ity, and his opin­ions on the com­pe­ti­tion: Nvidia, Fermi, GeForce 3D and PhysX and Intel’s recent progress with Larrabee.

Richard started work­ing with 3DLabs in 1996, and from 1998 to 2002 he ran Nvidia’s game devel­oper rela­tions pro­gram and as the first non-US mem­ber of staff he set up its Euro­pean office. In 2002 he joined ATI as a con­trac­tor and now works full time as its Devel­oper Rela­tions Manager.

The inter­view was recorded and tran­scribed from bit-tech.net. The ital­i­cised empha­sis is included in the arti­cle to directly rep­re­sent Richard’s vocal empha­sis; edits were made for clar­ity of mean­ing, syn­tax and brevity.

bit-tech: How exactly does AMD work with game devel­op­ers? Nvidia is very vocal about its machine [The Way It’s Meant to Be Played pro­gram], but we’ve heard less on the AMD front — why is this?

RH: Well the rea­son why you hear less on the AMD front is not because we do less, but we don’t mar­ket our devel­oper rela­tions in the same way that Nvidia do. I remem­ber an issue I raised at Nvidia in 2002 [when he worked there] and the HR man­ager came back to me and said, “you really don’t want to raise that point — it won’t do your career any good, Dan Vivoli, the VP of mar­ket­ing is some­one Jen-Hsun Huang is lean­ing on more and more these days, so if he doesn’t like it, you won’t make any progress on the mat­ter.” [Nvidia]‘s a mar­ket­ing lead com­pany and that’s not how it is with AMD. Look at our CEO at the moment: we’ve got Dirk Meyer, an engi­neer by trade who’s deeply a technologist.

I mean, I’ve still got a respect for Jen-Hsun because he knows his tech too, but Nvidia is clearly a mar­ket­ing lead com­pany. [Nvidia] has put this big pro­gram together with equally big label that they shove in your face all the time, but I don’t really think what they do is rad­i­cally dif­fer­ent than what we do — we just don’t make as much noise about it.

How do we work with peo­ple? Well look­ing at the process we did with DirectX 11, we seed sam­ples and early dri­vers [to devel­op­ers]. We have excel­lent rela­tion­ships with a num­ber of key games devel­op­ers which means we give them pre-release dri­vers, some­times sev­eral times a day if it’s on a key issue, but that’s rare. Along with seed­ing the hard­ware we’ll put engi­neers on site — so if you look at Dirt 2,STALKER: Call of Pripyat and Uni­gen have their engine out there at the moment, these are the only DirectX 11 titles right now -

dx9 mode

dx9 mode

dirt2 dx11 mode

dx11 mode

bit-tech: –from the ground up you mean?

RH: Absolutely. Bat­tle­ForgeSTALKER, and with Dirt 2 have had engi­neer­ing vis­its [from us] and engi­neer­ing on site and they have access to engi­neer­ing com­mu­ni­ca­tion on the phone or email. Along with that we have a co-marketing pro­gram, so Bat­tle­Forge — there was a DirectX 10.1 ver­sion out in March — we had a co-marketing pro­gram with them and we pushed it as “this is DirectX 10.1, look at what it can do for you and the per­for­mance advan­tages you can get by run­ning 10.1 over 10.” We do this by bundling games as well, I think we bun­dled Bat­tle­Forge — we’ve cer­tainly bun­dled STALKER and we’re bundling the hell out of Dirt 2 right now. The engi­neers and CTO from Code­mas­ters put together a video for us to talk about the co-operation we’ve done with them.

We’ll pro­mote those bun­dles to our AIB part­ners and OEMs as well where it’s rel­e­vant. We’re work­ing with Rebel­lion on a future title — that’s a pretty blood thirsty title (Aliens ver­sus Preda­tor]) so I wouldn’t expect some­one like Dell to include it — when you’re rip­ping people’s spines out and keep­ing their skulls, it’s not kind of the mes­sage you want to send with PCs. Some­thing like Dirt 2 is a cool rac­ing game that is accept­able world­wide, so we push that through the chan­nel ecosystem.

bit-tech: How do you decide who to work with, or is it sim­ply a case of they come to you if games devel­op­ers want to add the extra fea­tures such as DirectX 11?

RH: A few of the games devel­op­ers came to us ask­ing about DirectX 11 because Microsoft obvi­ously were out there push­ing the mes­sage as well, but the key point for DirectX 11 adop­tion was actu­ally GDC, March 2009, that’s when we had a num­ber of games devel­op­ers approach us that were not at that point on our radar. We were already look­ing around and were in coop­er­a­tion with Code­mas­ters, and Rebel­lion came to us in March as well, plus we were already work­ing with EA for Bat­tle­Forge and GSC Game­world for STALKER on DirectX 10.1 it was a nat­ural exten­sion there. We cer­tainly want peo­ple to come to us if they haven’t already been approached by us — any­one who is good at tak­ing on tech­nol­ogy and can accept the tran­si­tion from DirectX 9 to 11 or 10–10.1 to 11, then they are a nat­ural can­di­date for us to talk to.

We need accept­abil­ity of the game if we want to bun­dle it — we want games that are going to be played and used by you guys. It’s very inter­est­ing for us that we work closely with games that are going to be used for reviews, clearly we can­not afford to ignore them.

There isn’t any­one we won’t work with — we cer­tainly don’t stand back and say “that’s a ‘Way It’s Meant To Be Played’ title, let’s not work with them”, in fact, quite the oppo­site. We make sure every­one who gets early builds of their soft­ware gets a chance to work with us and we have exten­sive test­ing labs so even if we’re not doing all the rest of the big pro­gram stuff we can just do test­ing — things such as Bat­man: Arkham Asy­lum, which we have an engi­neer assigned to and we got builds in reg­u­larly. If we see some­thing that alarms us then we go after it and try and fix it.

bit-tech: How is AMD’s sup­port for Dirt 2 — where you give a lot of mar­ket­ing, engi­neer­ing sup­port and bundling, dif­fer­ent from Nvidia’s sup­port to Rock­steady with Bat­man? Nvidia is inject­ing its own IP into the game — in terms of PhysX, and the game’s anti-aliasing method — and then pro­tect­ing its own busi­ness inter­ests, as both are Nvidia-only.

RH: The Rock­steady stuff is inter­est­ing from a num­ber of per­spec­tives. For starters, it’s a DirectX 9 title so it doesn’t push hard­ware ter­ri­bly hard, and it cer­tainly doesn’t push any of the new capa­bil­i­ties. I won’t deny it’s a per­fectly good game but in terms of using new hard­ware and using it hard — it doesn’t — so it’s not insanely excit­ing to us. How­ever, I have one of my best engi­neers — one of my most pro-active engi­neers — and he was get­ting builds on a reg­u­lar basis. We did talk to Eidos about the pos­si­bil­ity of being a co-marketed title with us, how­ever Nvidia decided it would — to use your phrase — inject its IP into it. It did this in two parts, one of which I’ve got I’ve got a rea­son­able amount of respect for and the other I frankly hold in com­plete contempt.

[Nvidia] put PhsyX in there, and that’s the one I’ve got a rea­son­able amount of respect for. Even though I don’t think PhysX — a pro­pri­etary stan­dard — is the right way to go, despite Nvidia tout­ing it as an “open stan­dard” and how it would be “more than happy to license it to AMD”, but [Nvidia] won’t. It’s just not true! You know the way it is, it’s sim­ply some­thing [Nvidia] would not do and they can pub­li­cally say that as often as it likes and know that it won’t, because we’ve actu­ally had quiet con­ver­sa­tions with them and they’ve made it abun­dantly clear that we can go whistle.

How­ever, PhysX is a piece of tech­nol­ogy that changes the game­play expe­ri­ence and maybe it improves it. What I under­stand is that they actu­ally invested quite a lot, Nvidia put in a hefty engi­neer­ing time and they tried to make a dif­fer­ence to the game. So, in that aspect, I have respect for it; it’s a rea­son­able way to han­dle the sit­u­a­tion given the invest­ment in PhysX. Nvidia wanted a co-marketing deal and put for­ward PhysX, and Rock­steady and Eidos said, OK, as long as you do it — which they did.

The part that I totally hold in con­tempt is the appalling way they added MSAA sup­port that uses stan­dard DirectX calls — absolutely noth­ing which is pro­pri­etary in any use­ful sense. They just did ordi­nary stuff, a com­pletely stan­dard rec­om­men­da­tion that they make and that we make to devel­op­ers for how to do MSAA, and they put it in and locked it to their hard­ware know­ing it would run just fine on our hard­ware. And indeed, if you sim­ply spoof the ven­dor ID in the dri­ver — which we and other peo­ple have doc­u­mented — it runs absolutely fine on AMD hard­ware. There’s noth­ing pro­pri­etary about it in that sense, noth­ing new. I think that’s excep­tion­ally poor.

What I could have done as the Devel­oper Rela­tions guy at AMD is say “actu­ally, what they’re doing is a rea­son­able busi­ness invest­ment and I’ll do exactly the same thing for all the DirectX 11 code we are adding. We’ll just go in an add it, and since I can’t QA it on Fermi because all they’ve got still is a faked up board that they showed off recently, what I’ll do is I’ll lock it to our hard­ware.” Morally I think that would be rep­re­hen­si­ble, but from a busi­ness point of view I could argue in favour of it, but we think it’s really the wrong thing to do and we’ve not locked a sin­gle line of DirectX 11 code. That’s the dif­fer­ence in the way [AMD] works — we work through enable­ment and open stan­dards. [Nvidia] works through closed stan­dards and dis­able­ment, which, to me is inex­cus­able; it’s as bad as that.

bit-tech: Do you think we’ll see more of this kind of behav­iour in the future?

RH: I hope we’ll see less — I hope that both Rock­steady and Eidos that feel they’ve been dragged into a mar­ket­ing war that isn’t in their inter­est and in the con­sumers inter­est by allow­ing that in and they will decide not to allow it in future. I cer­tainly hope other devel­op­ers and pub­lish­ers will make the same decision.

If I’ve done any­thing to embar­rass Rock­steady or Eidos in any of my dis­cus­sions about this then I hope that the only effect of that is peo­ple say, “you know what, we should be embar­rassed about it.” I’m not try­ing to force the issue but I hope Nvidia will realise it’s a poor tac­tic and poor qual­ity approach and not one that would be taken by any tech leader.

bit-tech: Recently Nvidia dis­abled PhysX in the dri­vers if you’re using an ATI card as the pri­mary graph­ics adapter.

RH: They don’t want to QA it. The PC is an open plat­form, though — you’re meant to take any two parts and put them together. Intel don’t say “we’re not pre­pared to QA our CPUs with Nvidia or AMD’s graph­ics parts” when they obvi­ously spend time QAing them because you want to build a sys­tem that works.

bit-tech: Given Nvidia licensed its own MSAA tech­nol­ogy for Unreal Engine 3, why don’t you just do the same thing? Put your code in as well and when the game detects your ven­dor ID it uses this code instead.

We’re cur­rently work­ing with Eidos and we want that to be in there in a future update. That’s not a com­mit­ment to it, but we are work­ing with Eidos to make it hap­pen because I believe it’s in every consumer’s interest.

he Saboteur lacked ATI support due to last minute changes, but was quickly patched

he Sabo­teur lacked ATI sup­port due to last minute changes, but was quickly patched

bit-tech: Recently, Sabo­teur launched with­out any sup­port for ATI graph­ics hard­ware — although it was patched later on. How did that happen?

RH: It was a mess of tim­ing. The devel­oper put in a change at the very last moment which unfor­tu­nately relied on a par­tic­u­lar behav­iour of the dri­ver. Two changes in our dri­ver and [this change] in the game took place at the same time and we didn’t catch that — we should have done, and that’s a straight for­ward fail­ing on our part. We worked as closely as we could with the game devel­oper to make the patch avail­able as quickly as pos­si­ble, but we messed up on that occa­sion. If you want to catch me on these I’ll put my hands up to every one of them. I wouldn’t want to try and dis­cour­age you from catch­ing me on this because I want you to go catch Nvidia as well so if you’ve got a list of titles where you think we failed, bring it out because a PC should just work.

bit-tech: That brings us to the con­so­lifi­ca­tion of games. More and more devel­op­ers are leav­ing PC gam­ing or push­ing it into sec­ond place as issues of piracy, rev­enues, QA time etc. con­tinue to mount, how do you encour­age devel­op­ers to com­mit to a PC release, let alone DirectX 11?

RH: It’s a good ques­tion and one con­sole ven­dors will have to ask them­selves too, once cloud com­put­ing becomes prac­ti­cal — do you really need a con­sole to do the job for you or can you rely on a nice, fast broad­band con­nec­tion to do the job for you? All of us are look­ing at ways to improve the value asso­ci­ated with that par­tic­u­lar plat­form we work on. As the com­pany that sup­plies the graph­ics parts for the Xbox 360 I have to say I don’t cry too much if some­one plays on a 360 instead, or even on a Wii [where ATI graph­ics are also present] because there’s some­thing like 90 mil­lion units between those two which all fea­ture AMD chips, so I’m not exactly against con­sole gaming.

bit-tech: Do you see the next gen­er­a­tion of con­soles being cloud com­put­ing clients, then?

RH: No, def­i­nitely not because I think it’s nice to have a decent chunk of horse­power avail­able to you locally — that can make a big dif­fer­ence, par­tic­u­larly if you are in some­thing which is a twitchy game where 100th of a sec­ond counts. I don’t think we’ll go com­pletely to cloud com­put­ing in one gen­er­a­tion, but we’ll have more access to it in the next gen­er­a­tion. The Onlive stuff was an inter­est­ing route to go.

bit-tech: Will more PC games move towards a cloud model faster? I’m think­ing espe­cially given there’s more chance to try things on a con­tin­u­ally upgrad­able computer?

RH: It’s a mat­ter of choos­ing the expe­ri­ence you like best. Maybe you’ll end up play­ing Cry­sis on a mobile phone, but it’s not quite the real expe­ri­ence. If you had a large 30in mon­i­tor or Eye­fin­ity where you have three mon­i­tors then even your periph­eral vision is engaged, then that’s a bet­ter, richer, visual experience.

bit-tech: Will we see more Eye­fini­tiy titles?

RH: At two hun­dred bucks per mon­i­tor to fill in my periph­eral vision, yes absolutely!

bit-tech: I watched PC Pro try Burnout on it the other day and because most PC games are designed with the HUD around the edges. This means you have to phys­i­cally move your head around to see it because it’s on the periph­eral screens. Will there be dri­ver updates to move these to the cen­tre screen or are you work­ing with game devel­op­ers to patch/optimise for Eyefinity?

RH: We won’t, in this gen­er­a­tion, be able to put in a fix that takes some­thing like Burnout and moves the HUD into the cen­tre. Most games actu­ally where they’ve looked at this on some­thing such as Matrox’s Triplehead2Go then they’ve realised it’s sim­ply impor­tant not to just widen things out as you go and spread them in the same kind of ratios, it’s impor­tant to focus on the cen­tral dis­play. Burnout is prob­a­bly in the minor­ity by push­ing its HUD that far out.

bit-tech: A lot of FPS games have health in one cor­ner and ammu­ni­tion left in the other?

RH: Well if all they do is stretch­ing it out, that is dis­ap­point­ing and it’s the wrong way to go. Obvi­ously you should bring the bits into the cen­tre screen and just use the other screens as periph­eral vision, which is Dirt 2 does.

Fix­ing that in the dri­ver would be quite hard because they’re using their own shaders to put things in spe­cific places. We could do it, but I don’t think it’s worth the effort and we’re con­cen­trat­ing on engag­ing future games and a select num­ber of titles that we hope to get patched. There’s an API com­ing for it which will be pub­li­cally doc­u­mented and if Nvidia want to go down the same kind of route then they can use the same API and exactly the same kind of func­tion­al­ity, although they can’t call it Eye­fin­ity. It’s not about shut­ting peo­ple out to us, it’s about inno­va­tion — doing it first and doing it well.

bit-tech: What’s your next flag­ship game com­ing up?

RH: Aliens Ver­sus Preda­tor — the next Rebel­lion game. I believe that’s sched­uled for late February.

bit-tech: I thought it was Valentine’s Day, wasn’t it?

RH: They did talk about Valentine’s Day recently and I think that’s quite nice because there’s a cer­tain amount of romance to do with the Aliens and Preda­torget­ting together I suppose.

bit-tech: How much money and man­power does AMD put into its Devel­oper Rela­tions program?

RH: We won’t detail the man­power as it’s a sig­nif­i­cant com­pet­i­tive detail we really wouldn’t want Nvidia to know. They claim par­tic­u­lar num­bers but I also know at least roughly where they do dou­ble count­ing of per­son­nel. You know, you can have an engi­neer in the dri­ver team, but he’ll also be counted again when it comes to devel­oper rela­tions. That kind of stuff means that being in a direct con­flict about who has the most becomes a con­test of who is will­ing to dou­ble count the most often. It gets a bit silly.

The bot­tom line is we have enough; we don’t let triple-A or double-A titles go through the net and in fact it’s extremely rare for a Sabo­teursit­u­a­tion to come up. It’s very rare for titles as a whole to go past us with­out see­ing our QA and test­ing labs along the way. Our team is big enough and actu­ally exceed­ingly good at some of the things they do. I believe it is smaller than the Nvidia team that’s directly related to devel­oper rela­tions, but I have some of the best engi­neers in the world doing some really great stuff in terms of R&D with graph­ics opti­mi­sa­tions: light­ing and shadowing.

AMD loves the Alien and the Predator equally

AMD loves the Alien and the Preda­tor equally

bit-tech: Is this year’s STALKER bet­ter than last year’s? We orig­i­nally gave Clear Sky a 3/10 because it was so buggy, but even­tu­ally after four patches it was fixed–

RH: Well, it was an Nvidia ‘The Way It’s Meant To Be Played’ title and when it came over to our pro­gram, every­thing went good.

(Ed: Clear Sky launched as part of the Nvidia ‘The Way It’s Meant To Be Played’ pro­gram but then moved to AMD to include DirectX 10.1 from the 1.5.06 patch.)

These types of high pro­file titles should just work because they are games we care about and it’s our respon­si­bil­ity to help the game devel­oper not hin­der them. We added DirectX 10.1 via a patch and improved their 10.0 code path with MSAA sup­port as it’s a deferred ren­der­ing game, which is more dif­fi­cult to do. Deferred Ren­der­ing is a style of cre­at­ing the con­tent inside the game — games are either for­ward ren­der­ing or deferred ren­der­ing and it’s very hard to get mul­ti­sam­ple anti-aliasing into a game that uses deferred ren­der­ing as the two fight each other. Well, we not only helped them do that for DirectX 10.1, because 10.1 adds the abil­ity to do it specif­i­cally, but we also included the abil­ity to do it on the DirectX 10 code path too. On our hard­ware, and on Nvidia’s hard­ware. [AMD] believes in enabling.

bit-tech: If peo­ple don’t know, then as noble as your efforts are they go unreg­is­tered and peo­ple end up mak­ing their own assump­tions about what oth­ers might think is hap­pen­ing instead.

RH: The rea­son I don’t shout about it more is because I’m engaged in work­ing with the games devel­op­ers and I’m busy in try­ing to make their job eas­ier and get them more results, rather than being out here and doing this kind of inter­view — though I do really appre­ci­ate this chance to have a chat — although my pri­or­i­ties are to work with games devel­op­ers. AMD is not a mar­ket­ing com­pany like Nvidia is.

We’re proud of the way we worked with [GSC Game World] and they came back to us in March and started talk­ing about DirectX 11 stuff, say­ing “we think we can do [DirectX 11] for about August this year”, and they were pretty close with that which was very impres­sive because back then they hadn’t even released the 10.1 patch. Late August they had it run­ning and Sep­tem­ber we showed it before it was released in the East­ern Block in October.

(Ed: It was launched in the CIS on Octo­ber 2nd in Russ­ian lan­guage and in Ger­man lan­guage in Ger­many, Aus­tria and Switzer­land on Novem­ber 5th)

STALKER developer GSC Gameworld has been keen to use the latest versions of DirectX

STALKER devel­oper GSC Game­world has been keen to use the lat­est ver­sions of DirectX

RH: I remem­ber send­ing an email to my engi­neer who had sup­ported them say­ing “Great job on get­ting the first DirectX 11 title out there”, and then John — the guy who sup­ported Bat­tle­Forge — came back to me at pointed out that actu­ally, it wasn’t the first DirectX 11 title!

bit-tech: At least you got two out there–

RH: -two out there, within a month of the DirectX 11 launch! Give me a sin­gle time when a new DirectX has launched and that’s hap­pened? That’s easy — it’s never hap­pened before. It’s typ­i­cally two to three months before the first title arrives and the sit­u­a­tion we have now where DirectX 11 shipped with Win­dows 7 and Vista Ser­vice Pack 2 it’s unheard of to see these titles launch so close to, let alone before a DirectX ver­sion was released.

I can remem­ber talk­ing about DirectX 9 at the time with Chas Boyd, lead archi­tect for Microsoft, and say­ing, “I think we might be able to get Tomb Raider: Angel of Dark­ness in time for Christ­mas,” which was four months after DX9’s release, and he replied “that will be a major achieve­ment.” Well [AMD] has three titles out there already you can buy includ­ing a cou­ple of free bench­marks — not from AMD, we’re not bench­mark­ing our own hard­ware — and we have a list of about 20 titles that cover the next nine months.

bit-tech: Do you see DirectX 11 tak­ing off like DirectX 9 did?

RH: More rapidly than DirectX 9 did. When I went to GDC in March 2009 I was impressed with the num­ber of soft­ware devel­op­ers that came to me and said DirectX 11 looks like it solves a few prob­lems, so what do we need to do? I’ve never had that kind of con­ver­sa­tion before, it’s always been, “Look here’s DirectX-number for you, let me explain.

DX11 solves at least two big prob­lems; num­ber one is that it lets you get rid of a pre­vi­ous ver­sion of DirectX because DirectX 11 runs on 11, 10 and 9 hard­ware, when you were think­ing about ship­ping you no longer have to have a ver­sion for each sep­a­rate oper­at­ing sys­tem: 9 for XP, 10 for Vista, 11 for Win­dows 7. The num­ber of builds is reduced to just one, unlike Vista and DirectX 10 com­pet­ing with XP and DirectX 9.

There’s no addi­tional ver­sion of DirectX that has to be dealt with now — dump DirectX 10, you just go to DirectX 11, do the fea­ture level sup­port and you’re away. So, instead of not know­ing how pop­u­lar Vista will be on launch — which was the case with DirectX 10 — you’ve now got a Vista install base and a Win­dows 7 one. If you were a com­pany like Cry­tek who did decide to do a DirectX 10 ver­sion of Cry­sis, that meant you had to wait five months after DirectX 10 had released before it launched its game. With DirectX 11 there’s no rea­son to wait because we know that on day one we’ve got some crazy big num­ber of PCs already sup­port­ing DirectX 11 thanks to a Ser­vice Pack 2 update for Vista and the pop­u­lar­ity of pre-orders and the release candidate.

The DirectX 11-compatible Radeon HD 5870 has been helped by the success of Windows 7

The DirectX 11-compatible Radeon HD 5870 has been helped by the suc­cess of Win­dows 7

bit-tech: Do you think that Microsoft’s suc­cess with Win­dows 7 is also piv­otal to the DirectX 11 uptake as well?

RH: Microsoft realised it had cre­ated too many dif­fi­cul­ties with Vista and the tran­si­tion from XP to Vista and they needed to get it right with Win­dows 7. Win­dows 7 is a great oper­at­ing sys­tem — I had six months before I met my first blue­screen — which is unprece­dented. I’ve blue­screened Linux more quickly than that as I use Ubuntu a bit at home. From a per­for­mance per­spec­tive Win­dows 7 is much bet­ter in how it uses resources so I’m not hav­ing to ded­i­cate a colos­sal amount of video mem­ory to images which are dupli­cated — now they are just ‘in the right place’ — it’s a swift and respon­sive oper­at­ing sys­tem and it finally doesn’t spend all its time index­ing in a way that con­fuses and annoys me.

With DirectX 11 you can take most of the lessons from DX10 and even DX9, and with a rel­a­tively small amount of rejig­ging you’ve got most of the knowl­edge to do a good job. The fea­ture level sup­port is also a stroke of genius that they’ve always resisted before — make DirectX 11 work on DirectX 9 hard­ware. NOT by fak­ing a soft­ware tes­se­la­tor because that would be hor­ren­dous, but by say­ing “look, here’s what you can do on DirectX 9/Shader Model 3, DirectX 10/Shader Model 4 and then finally give the full glory of DirectX 11/Shader Model 5 where we expose every­thing.” That’s excel­lent and some­thing Microsoft has resisted before because they just wanted the new DirectX to run on the new hardware.

bit-tech: But Microsoft had to start again any­way with DirectX 10 because of the dri­ver change in Vista and how extra fea­tures could be added to DirectX 9?

RH: Well it’s arguable that [Microsoft] could have gone in and changed the dri­ver infra­struc­ture on XP so that it could have sup­ported DirectX 10, but they would have had to come up with a new dri­ver model.

bit-tech: But it wasn’t worth updat­ing an OS from 2001 that would poten­tially affect sales of Vista.

RH: Yes, I agree, and they did some­thing else too on the graph­ics side — they took mul­ti­core and mul­ti­threaded CPUs and there’s now true mul­ti­threaded sup­port for DirectX for run­ning on as many cores as you like — cer­tainly we’ve seen scal­ing up to 24 cores, which takes multi-processor as well as mul­ti­core proces­sors into account. All these threads can under­take graph­ics related work at one time that then get con­sol­i­dated into a sin­gle thread for the GPU. That makes for a much more effi­cient way of talk­ing in CPU-land, to the graph­ics card. Like I say, on the graph­ics side all I care about is the pix­els that are ren­dered, but as a CPU com­pany too we are espe­cially delighted about Microsoft’s thread­ing work as well because there are real-world ben­e­fits to buy­ing two, three and four core CPUs we are ship­ping already.

bit-tech: As a (cur­rent) per­for­mance leader in graph­ics that must give you sig­nif­i­cant lever­age in the indus­try. How­ever, on the CPU front you’re… strug­gling more, com­pared to the com­pe­ti­tion. Do you work in the same way with games devel­op­ers for CPU opti­mi­sa­tions as well?

RH: We do, although, games devel­op­ers tend to see that a CPU is a CPU is a CPU, and they are not will­ing to invest in a colos­sal amount of effort in opti­mis­ing for them.

bit-tech: What about par­tic­u­lar cache archi­tec­tures, instruc­tion sets or the way it addresses memory?

RH: Well it’s a bit hell­ish for them because they don’t know how our cache archi­tec­ture is going to be for the next gen­er­a­tion and we’ve already got plenty for them to deal with–

bit-tech: –But for the last few gen­er­a­tions: K8 (Athlon), K10 (Phe­nom), K10.5 (Phe­nom II), they are all related very close and so that’s a huge install base already–

RH: Yes, it is, you’re right–

bit-tech: –so why not say “this works, peo­ple bought it, you can opti­mise for this”?

RH: We do, but the biggest ben­e­fit we push is just to say, “use the cores.” Take account of how many cores you have access to and write the code so it scales prop­erly. Build worker maps for 2, 3, 4 cores etc. and han­dle that. That’s the sin­gle best way to get scal­ing out of CPUs — whether it’s Intel or AMD archi­tec­tures makes much less of a dif­fer­ence. There are some things you can do; you can take advan­tage of the improved SSE instruc­tions which we keep on extend­ing, but they’re pri­mar­ily designed so you can do cool stuff with video. Gen­er­ally the most impor­tant thing to be aware of with CPUs is to be effi­cient with the use of mem­ory and use the cores so they don’t fight.

Thanks for bit-tech.net for the great inter­view and arti­cles. I like read it for my com­mu­nity, Gratz.

Back Top

Responses to “[Interview] With AMD Richard Huddy in DirectX.11 game development”

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Back Top