How The PS4 and XBox 720 Benefit PC Multi-Threading
It wasn’t too long ago that games didn’t really take advantage of the multi core monsters lurking in PC gamers systems. It was often little benefit to have a quad, other than if you happened to do ‘other things’ such as image editing, video editing – creative stuff. But, the Xbox 360 and the Playstation 3 were both multi core systems, and I’d a feeling that more games would quickly be able to use such things.
The appeal of a Quad Core started when I saw a technology demo of the Intel Quad Cores. This was back in 2006 when Intel were just unveiling their Core 2 Duo and Core 2 Quad ranges. Alan Wake was running on a quad core system, with a whole cpu being devoted to the use of Physics in game. As soon as I had chance, I jumped on the Q6600. The fact is, that game engines are developed to run on a wide variety of hardware. The Xbox 360 and Playstation 3 were both multi core. Take the X360 for instance – it’s CPU is 3 cores, each handling 2 threads. It was fairly obvious to me that game engines would start taking advantage of this for the PC too. It makes the porting process a lot easier. I’ll admit, that certain games such as GTA4 on PC took more of an advantage than others, but still – there were signs.
Fast forward onto present day, in the twilight of the Xbox 360 and PS3. We’ve already had Crysis 3 released, and it seems to do just about as well on AMD FX8350 Black Edition 8 Core CPU (amazon link) as it does many of Intels I7 range. This is fairly unusual – AMD’s cpu’s have traditionally been slower – thanks to their poorer performance in single thread applications. How and why does this make sense? Well, think of it this way – the PS3 has one CPU (and 6 SPUs), sometimes the engine chugs along when things get busy, and on ports the engine is sometimes forced to run on a single CPU thread for a small amount of time, trashing the multi-core performance AMD are banking on. Things will likely get better as AMD prepares the ‘SteamRoller’ CPU for some point later this year, but right now, this simply hasn’t usually been the case. But Crysis 3 runs on Cryengine 3, and it, along with newer engines (such as for instance FrostByte 3) are designed with the future in mind.
“Getting a common game architecture to run across both [Xbox 360 and PS3] is no easy feat and you have to take ‘lowest common denominator’ sometimes. This can mean that your engine, which is supposed to be ‘wide’ (ie. runs in parallel across many cores) ends up having bottlenecks where it can only run on a single core for part of the frame,” says the Chief Technical Office at Avalanche Studios’, Linus Blomberg
He continues “this usually isn’t an issue, except when you come to scaling up to PC architecture. If your engine works in a certain way then running more in parallel helps for part of the frame, but you still get stuck on the bottlenecks. This is why, I think, that most games that are ‘ported’ to PC work better with fewer more powerful cores, like the i5. The single-threaded grunt is enough to get you through the bottlenecks and drive a faster frame-rate.”
PS4’s Jaguar CPU isn’t super fast…
Because the Playstation 4 (and likely the Xbox 720, if it’s using the AMD Jaguar as rumoured) focus on low power devices, they’re forced to ‘make up’ the speed with a large amounts of cores. This forces developers to use all of the cores to their fullest to get the most out of it. Previously, on for instance the Playstation 3, you could make a good game using the CPU only, and not use the SPUs. With the Jaguar though, this isn’t the case. Just in case you’re unfamiliar with the AMD Jaguar, that powers the Playstation 4 (and likely, Xbox 720 Durango), it’s 8 cores, running at 1.6GHZ. I’ve already mentioned in previous videos and indeed, an article that the CPU isn’t much better than a low spec PC cpu. So the challenge for developers will be to eek all of the performance they can out of it, by spreading the work load over the 8 cores.
As a slight aside, this made the Playstation 3 more difficult to get the most out of than say, the Xbox 360. However, this isn’t a situation that is unique to Sony – the PS2 had similar issues as well. With the requirements to use the two Vector Units (VU0 and VU1) to really get the most out of the system, which was contrary to something like Nintendo’s Gamecube.
Honestly, the CPU of these consoles will need to concern itself with the APU design. A lot of the tasks will be offloaded to the GPU – likely physics, AI and all of the other good things that the GPU is good at rendering. The PS4 and Xbox 720 will be able to survive because of their design, but it’ll likely trickle down to PC too, much better Physics and other effects are to me just as important as prettier looking textures. The other benefit is that PC gaming will likely become cheaper – as we’ll be seeing CPU and GPU’s released that are capable of pushing out huge amounts of power compared to the consoles. A Nvidia GTX 650 ti (amazon link) is more than capable of displaying games at decent resolutions and settings, especially if overclocked for example.
One concern we’ve got is that Intel’s Haswell marks the last of the CPU’s made by Intel (at least that’s known so far) which will be user upgradeable. All other CPU’s will be part of the motherboard, which means upgrading is a lot more difficult. AMD are likely to continue using sockets – at least for now.
PC gaming is never simple – but the hardware is certainly becoming more streamlined and interesting.