PS4 and Xbox One: Was AMD the right choice?

Shortbread

Island Hopper
Legend
http://www.playstationlifestyle.net...ies-on-multi-threading-says-planetside-2-dev/

We have the exact same kind of Achilles’ heel on the PC too. People who have AMD chips have a disadvantage, because a single core on an AMD chip doesn’t really have as much horsepower and they really require you to kind of spread the load out across multiple cores to be able to take full advantage of the AMD processors.

Our engine sucks at that right now. We are multi-threaded, but the primary gameplay thread is very expensive. The biggest piece of engineering work that they’re doing right now, and it’s an enormous effort, is to go back through the engine and re-optimize it to be really, truly multi-threaded and break the gameplay thread up. That’s a very challenging thing to do because we’re doing a lot of stuff – tracking all these different players, all of their movements, all the projectiles, all the physics they’re doing.

It’s very challenging to split those really closely connected pieces of functionality across in multiple threads. So it’s a big engineering task for them to do, but thankfully once they do it, AMD players who’ve been having sub-par performance on the PC will suddenly get a massive boost – just because of being able to take the engine and re-implement it as multi-threaded.

I’m very excited about that because I have a lot of friends, lots of people who are more budget minded, going for AMD processors because nine times out of ten they give a lot of bang for the buck. Where it really breaks down is on games with one really big thread. PlanetSide’s probably a prime example of that.

Anyone care to elaborate on this statement?

How does one AMD CU stack up against one Nvidia CUDA core?

Knowing that the PS4 has 18 CU's and XB1 has 12 CU's, does this mean "more optimizing" is required/needed for a game like PlanetSide 2 to run decently on XB1?
 
That is discussing the inferior single-threaded performance of AMD's CPU cores.
The CU is something separate, and is not at the same level to a CUDA core (SIMD lane). It corresponds more closely to the architectural level of an SMX.
 
They are talking about the CPU cores, not the GPU part.

Said that, it was something bound to happen once you go the APU route, unless you're willing to engineer a massive chip with faster and more intricate CPU cores severely increasing the heat output.

While AMD still trails behind Intel in single threaded performance, they have some pretty competitive eight cores CPUs such as the FX-8350. Unfortunately it also has a 125W TDP, which is problably more than the entire XBO / PS4 chip (CPU+GPU)!
 
When DF interviewed Mark Cerny at Develop there was an interesting exchange:

Digital Foundry: I guess from there we move to AMD as the partner of choice for creating PlayStation 4. Was it the research and products along the lines of the APUs that most excited you?

Mark Cerny: This probably doesn't quite answer your question, but there are so many issues involved in working with a vendor. The business relationship is very important. The timelines are very important, because you might be working with the brightest people in the business but if their product doesn't come out in the specific year that you need it, you can't work with them. There were a tremendous number of considerations and the choice of AMD came out of that.

If you take his exact words, what he's saying is AMD wasn't a choice, it was the only option given a number of factors. Of course, that may not be what he meant, although I'm inclined to believe he did mean that. Based on what I've read of interviews with him, he choses his words very carefully.

Interesting snippets from the interview though:

Matt Higby said:
“because of the update cadence, and the additional steps you have to go through to be able to release an update on the PlayStation network, we’re not going to be able to keep our servers in sync, so you won’t be able to just play with the same people.”

I'm half-impressed, half-shocked at this. I'm impressed that Sony are making other parts of Sony jump through the same game qualification rules as everybody else but shocked they can't better support another business unit in Sony. Sony's often being described as land of feuding kingdom, Kaz Hirai was going to try and improve co-operation and synergy within Sony. Still some work to do here :eek:

Matt Higby said:
Our engine sucks at that right now. We are multi-threaded, but the primary gameplay thread is very expensive. The biggest piece of engineering work that they’re doing right now, and it’s an enormous effort, is to go back through the engine and re-optimize it to be really, truly multi-threaded and break the gameplay thread up. That’s a very challenging thing to do because we’re doing a lot of stuff – tracking all these different players, all of their movements, all the projectiles, all the physics they’re doing.

Kudos for being candid about your engine, but how did this happen? The direction processor design has been moving in for many years, is more cores rather than more powerful cores. I'm surprised they didn't anticipate lower-end platforms ending up with more overall computational performance but spread over a number of individually lower-performing cores :???:
 
Last edited by a moderator:
I'm somewhat lost (please forgive me), how do you know that he is talking about CPU multi threading Vs. GPU threading? Because from all indications, PlanetSide doesn't run very well on AMD GPUs compared to Nvidia's, because of poor physx performance (lack of).
 
I'm somewhat lost (please forgive me), how do you know that he is talking about CPU multi threading Vs. GPU threading? Because from all indications, PlanetSide doesn't run very well on AMD GPUs compared to Nvidia's, because of poor physx performance (lack of).

The statement is discussing AMD processors, which is generally shorthand for the CPU.
It also discusses the main gameplay thread, which is not a GPU-side process.

The CUs exist in the graphics realm, and generating a mulithreaded set isn't as difficult. A massive amount of that work is done by the graphics subsystem, and the API has a lot of implied parallelism because of the workload.
 
Cerny called it a choice in your quote.

He said "the choice of AMD came out of that". Not, the choice of AMD and XYZ, nor the decision of AMD came out of that. He said AMD was the choice. AMD or nothing, basically.
 
He said "the choice of AMD came out of that". Not, the choice of AMD and XYZ, nor the decision of AMD came out of that. He said AMD was the choice. AMD or nothing, basically.

Every choice comes out evaluating multiple factors. If Sony had rated different considerations differently, other vendors could have come to fore.
From Cerny's description, the timeline was a very significant factor, but nobody was putting a gun to Sony's collective head to pick the specific deadlines it did--as damaging as a delay could be.

Sony's weighting of other factors, such as backwards compatibility, costs, tools, and rough performance targets were knobs it could turn.
Cerny is trying to avoid giving a definitive answer as to what factors were weighed, and what other parties they passed on.
 
And, IMO, tis discussion is only relevant for primarily PC target developers that are looking to go to leverage the "PC ness" of the new consoles; for primarily console developers targetting multi-treaded workloads to get the best performance was already the requirement.

Compare a 360 to XBOX one for instance, on 360 you have 3 cores with 2 threads threads each and you probably had to target 4-5 threads in the app to get the best CPU performance; with XBOX one you have 8 cores and 8 threads (with one or two reserved for OS, I forget how many) so you need to be targetting 6 threads for the best performance. With XBOX One, though, each core is significantly more powerful also none of the threads are sharing the resources with other threads.

The comments should also be taken with a little care as well - for instance Jaguar cores on the PC are targetted towards the Atom space in relation to Intel and the single threaded performance of Jaguar is better than Atom. For sure, though, when more apps on the PC are wider threaded the "earth mover" cores will see better performance scaling.
 
The statement is discussing AMD processors, which is generally shorthand for the CPU.
It also discusses the main gameplay thread, which is not a GPU-side process.

The CUs exist in the graphics realm, and generating a mulithreaded set isn't as difficult. A massive amount of that work is done by the graphics subsystem, and the API has a lot of implied parallelism because of the workload.

Ok, I'll except that.

So, from his statement about "physics"...would that remain on the CPU (PS4 Jaguar CPU in this case), rather than splintering it off to the PS4 GPU side? It would seem wasteful and taxing to leave physics performance up to the CPU, unless the AMD's GPU CU's are just that poor with physics. How would you go about this particular part?
 
Physics on a CU is a GPGPU type task - take a look at GPGPU performances and you'll see that GCN, for a given die size, is pretty much the leader in that space. Of course you need middleware to do that (Havok have shown one demo so far) and not all workloads lend themselves to the types of calculations that GPU's excell at.
 
It would depend on the type of physics being simulated. Particle and fluid simulations do rather well. Rigid body physics isn't as good a fit to the hardware.
 
Every choice comes out evaluating multiple factors. If Sony had rated different considerations differently, other vendors could have come to fore.

But who? You need a CPU and GPU. Intel could do the CPU but the GPU? Well, HD5000 GT3 isn't bad by all accounts but Sony's primary goal looks to have been time-to-triangle, that generally means a familiar architecture. PowerVR are out for the same reason. Nvidia weren't interested - at least not at what Microsoft and Sony were paying. I'm sure they looked at ARM packages, PS4 and Vita R&D must have been overlapping to a degree but given ARMv8 didn't appear until late 2011, that probably wasn't an option when both Microsoft's and Sony's projects started, and again, how many console devs know ARM?

It really does look like AMD or nothing.

From Cerny's description, the timeline was a very significant factor, but nobody was putting a gun to Sony's collective head to pick the specific deadlines it did--as damaging as a delay could be.

Right, and unless you're willing to put down a lot of money, if the goal includes the use of commodity parts to ease the creation process for developers, then you're bound to the development cycles of your CPU (AMD and Intel) and GPU companies. Suddenly AMD makes a lot of sense, but you can see how it's basically the only option at the cost/timelines both companies were working too.
 
Nvidia weren't interested - at least not at what Microsoft and Sony were paying.
That's spin. They were interested, and it wasn't that long ago that JHH was telling the world that they would be in one because "it is impossible for one company to do all three"! Cerny pinpointed the technical reasons they were out - i.e. the only APU like solution NVIDIA could offer would be ARM based and that's not powerful enough.
 
But who? You need a CPU and GPU. Intel could do the CPU but the GPU?
That depends on whether there was truth to the rumor that Intel tried marketing Larrabee to the console makers.

PowerVR are out for the same reason. Nvidia weren't interested - at least not at what Microsoft and Sony were paying. I'm sure they looked at ARM packages, PS4 and Vita R&D must have been overlapping to a degree but given ARMv8 didn't appear until late 2011, that probably wasn't an option when both Microsoft's and Sony's projects started, and again, how many console devs know ARM?
If ARM becomes worth looking into because the Vita architecture had it, then PowerVR gets pulled in as well.
It would depend on whether there is truth to the hearsay about an early run-off between ARM and x86. At least Sony may not have required 64-bit ARM up until the point it thought it could shoot for greater than 4GB in memory.
As far as how many console devs know ARM, from Sony's POV it's a question of how many devs know Vita.

Would it have been a misstep to go that route? AMD publicly put forward the narrative that neither Sony or Microsoft knew of their intention to go with a custom APU, although I don't know about that.
I think it would be fun to imagine an alternate universe where Sony somehow blundered into a 'roided-up Vita, although I'm not sure Sony would have enjoyed things as much.
 
But who? You need a CPU and GPU. Intel could do the CPU but the GPU? Well, HD5000 GT3 isn't bad by all accounts but Sony's primary goal looks to have been time-to-triangle, that generally means a familiar architecture. PowerVR are out for the same reason. Nvidia weren't interested - at least not at what Microsoft and Sony were paying. I'm sure they looked at ARM packages, PS4 and Vita R&D must have been overlapping to a degree but given ARMv8 didn't appear until late 2011, that probably wasn't an option when both Microsoft's and Sony's projects started, and again, how many console devs know ARM?

It really does look like AMD or nothing.

What about IBM?
 
That's spin. They were interested, and it wasn't that long ago that JHH was telling the world that they would be in one because "it is impossible for one company to do all three"! Cerny pinpointed the technical reasons they were out - i.e. the only APU like solution NVIDIA could offer would be ARM based and that's not powerful enough.
It's a good thing they're calling Shield a mobile console. It would be rather awkward addressing the financial analysts again after they stated that Nvidia would be in a next-gen console.

What about IBM?
There would be no GPU or strong multimedia presence. There's also the history of IBM not being interested in letting the crown jewels of its tech getting anywhere near the chips provided to that market.

Interestingly, IBM is just now licensing POWER8 (edit: may be a non-specific IP offering, only saw the specific core in one article so far) in cooperation with Nvidia and Mellanox. That combo of tech isn't so much console-level as it is HPC, but as a mental exercise it would be interesting to imagine if IBM was this worried about POWER's shrinking presence years ago.
 
Last edited by a moderator:
Back
Top