Performance - An Update

The Chipworks PS4 teardown last week told us a lot about what’s happened between the Xbox One and PlayStation 4 in terms of hardware. It turns out that Microsoft’s silicon budget was actually a little more than Sony’s, at least for the main APU. The Xbox One APU is a 363mm^2 die, compared to 348mm^2 for the PS4’s APU. Both use a similar 8-core Jaguar CPU (2 x quad-core islands), but they feature different implementations of AMD’s Graphics Core Next GPUs. Microsoft elected to implement 12 compute units, two geometry engines and 16 ROPs, while Sony went for 18 CUs, two geometry engines and 32 ROPs. How did Sony manage to fit in more compute and ROP partitions into a smaller die area? By not including any eSRAM on-die.

While both APUs implement a 256-bit wide memory interface, Sony chose to use GDDR5 memory running at a 5.5GHz data rate. Microsoft stuck to more conventionally available DDR3 memory running at less than half the speed (2133MHz data rate). In order to make up for the bandwidth deficit, Microsoft included 32MB of eSRAM on its APU in order to alleviate some of the GPU bandwidth needs. The eSRAM is accessible in 8MB chunks, with a total of 204GB/s of bandwidth offered (102GB/s in each direction) to the memory. The eSRAM is designed for GPU access only, CPU access requires a copy to main memory.

Unlike Intel’s Crystalwell, the eSRAM isn’t a cache - instead it’s mapped to a specific address range in memory. And unlike the embedded DRAM in the Xbox 360, the eSRAM in the One can hold more than just a render target or Z-buffer. Virtually any type of GPU accessible surface/buffer type can now be stored in eSRAM (e.g. z-buffer, G-buffer, stencil buffers, shadow buffer, etc…). Developers could also choose to store things like important textures in this eSRAM as well, there’s nothing that states it needs to be one of these buffers just anything the developer finds important. It’s also possible for a single surface to be split between main memory and eSRAM.

Obviously sticking important buffers and other frequently used data here can definitely reduce demands on the memory interface, which should help Microsoft get by with only having ~68GB/s of system memory bandwidth. Microsoft has claimed publicly that actual bandwidth to the eSRAM is somewhere in the 140 - 150GB/s range, which is likely equal to the effective memory bandwidth (after overhead/efficiency losses) to the PS4’s GDDR5 memory interface. The difference being that you only get that bandwidth to your most frequently used data on the Xbox One. It’s still not clear to me what effective memory bandwidth looks like on the Xbox One, I suspect it’s still a bit lower than on the PS4, but after talking with Ryan Smith (AT’s Senior GPU Editor) I’m now wondering if memory bandwidth isn’t really the issue here.

Microsoft Xbox One vs. Sony PlayStation 4 Spec comparison
  Xbox 360 Xbox One PlayStation 4
CPU Cores/Threads 3/6 8/8 8/8
CPU Frequency 3.2GHz 1.75GHz 1.6GHz
CPU µArch IBM PowerPC AMD Jaguar AMD Jaguar
Shared L2 Cache 1MB 2 x 2MB 2 x 2MB
GPU Cores   768 1152
GCN Geometry Engines   2 2
GCN ROPs   16 32
GPU Frequency   853MHz 800MHz
Peak Shader Throughput 0.24 TFLOPS 1.31 TFLOPS 1.84 TFLOPS
Embedded Memory 10MB eDRAM 32MB eSRAM -
Embedded Memory Bandwidth 32GB/s 102GB/s bi-directional (204GB/s total) -
System Memory 512MB 1400MHz GDDR3 8GB 2133MHz DDR3 8GB 5500MHz GDDR5
System Memory Bus 128-bits 256-bits 256-bits
System Memory Bandwidth 22.4 GB/s 68.3 GB/s 176.0 GB/s
Manufacturing Process   28nm 28nm

In order to accommodate the eSRAM on die Microsoft not only had to move to a 12 CU GPU configuration, but it’s also only down to 16 ROPs (half of that of the PS4). The ROPs (render outputs/raster operations pipes) are responsible for final pixel output, and at the resolutions these consoles are targeting having 16 ROPs definitely puts the Xbox One as the odd man out in comparison to PC GPUs. Typically AMD’s GPU targeting 1080p come with 32 ROPs, which is where the PS4 is, but the Xbox One ships with half that. The difference in raw shader performance (12 CUs vs 18 CUs) can definitely creep up in games that run more complex lighting routines and other long shader programs on each pixel, but all of the more recent reports of resolution differences between Xbox One and PS4 games at launch are likely the result of being ROP bound on the One. This is probably why Microsoft claimed it saw a bigger increase in realized performance from increasing the GPU clock from 800MHz to 853MHz vs. adding two extra CUs. The ROPs operate at GPU clock, so an increase in GPU clock in a ROP bound scenario would increase performance more than adding more compute hardware.

The PS4's APU - Courtesy Chipworks

Microsoft’s admission that the Xbox One dev kits have 14 CUs does make me wonder what the Xbox One die looks like. Chipworks found that the PS4’s APU actually features 20 CUs, despite only exposing 18 to game developers. I suspect those last two are there for defect mitigation/to increase effective yields in the case of bad CUs, I wonder if the same isn’t true for the Xbox One.

At the end of the day Microsoft appears to have ended up with its GPU configuration not for silicon cost reasons, but for platform power/cost and component availability reasons. Sourcing DDR3 is much easier than sourcing high density GDDR5. Sony managed to obviously launch with a ton of GDDR5 just fine, but I can definitely understand why Microsoft would be hesitant to go down that route in the planning stages of Xbox One. To put some numbers in perspective, Sony has shipped 1 million PS4s thus far. That's 16 million GDDR5 chips, or 7.6 Petabytes of RAM. Had both Sony and Microsot tried to do this, I do wonder if GDDR5 supply would've become a problem. That's a ton of RAM in a very short period of time. The only other major consumer of GDDR5 are video cards, and the number of cards sold in the last couple of months that would ever use that RAM is a narrow list. 

Microsoft will obviously have an easier time scaling its platform down over the years (eSRAM should shrink nicely at smaller geometry processes), but that’s not a concern to the end user unless Microsoft chooses to aggressively pass along cost savings.

Introduction, Hardware, Controller & OS Image Quality - Xbox 360 vs. Xbox One
Comments Locked

286 Comments

View All Comments

  • tipoo - Wednesday, November 20, 2013 - link

    http://www.conductunbecoming.ie/wp-content/uploads...
  • bill5 - Wednesday, November 20, 2013 - link

    there is a guy on neogaf with access to wii u official documentation that more or less confirms 160 shaders, even though it's never explicitly stated (for example it refers to 32 alu's, which would be vliw 5 in this case, meaning 160 shaders). combine that with the die evidence and it's clear. 8 tmu's, 8 rops also.

    some people will never accept it but there's no real doubt for me personally, it's 160.
  • tipoo - Wednesday, November 20, 2013 - link

    A 1:1 ROP to TMU ratio is quite strange. TMUs are usually double. Not doubling it is another weird limitation. Nintendo sure does have a lot of head scratchers in there.
  • djboxbaba - Wednesday, November 20, 2013 - link

    Wii U is almost decade old hardware packaged for today
  • tipoo - Thursday, November 21, 2013 - link

    The PowerPC 750 its based on is from the 1998 iMac G3 :P
    But I know, that's like saying the Core 2 is based on the Pentium 3.
  • dgingeri - Wednesday, November 20, 2013 - link

    For the first time since the Atari 2600, I actually want a particular console: the Xbox One. I don't even play console games. I want it for the voice control for the apps. I watch Hulu Plus and Netflix instead of TV, and this would make it easier to watch than using a Win7 PC like I do right now. It also uses less power than the PC I use right now. In addition, I would like to have the Skype app so I could talk to certain family members face to face, sort of, who are too far away for me to visit. The games don't attract me to the console so much as the other uses.
  • Hubb1e - Wednesday, November 20, 2013 - link

    I agree with you. The $500 price doesn't even scare me that much because my young girls and wife will probably like the casual kinect games.

    However, Microsoft has made a HUGE mistake with requiring a $60 yearly subscription. This isn't 2008 anymore. I can get a Roku streamer for $50 that will play netflix and Hulu for years to come. Kinect really appeals to the casual gamer and I'd get one myself for the steaming and the occasional console game session, but the $60 a year charge that can't be canceled easily (as I found on my 360) makes the XO a non-starter for me.
  • mikeisfly - Thursday, November 21, 2013 - link

    Hubb1e I hear you but how do they make up for the cost of the console? How much do you think a sensor like the Kinect 2 would cost on the PC? How do they continue to make money to make the network better so things like voice recognition get better and to make the investments to get the network closer to the end user to reduce latency? I'm willing to pay $60/year (one night out with the family at the movies/diner) to get a better experience.
  • Owls - Wednesday, November 20, 2013 - link

    Couldn't you get a $35 Chromecast dongle for your TV? Or does your TV not have a USB port? It just seems so odd shelling out $500 for watching TV. Heck, you could probably spend $500 and get a fairly decent smart TV with Skype, Hulu, Netflix, and Amazon Prime!
  • mikato - Monday, November 25, 2013 - link

    Seems like voice command is the only reason he can't do something like that, or just continue using his Win7 PC or an XBMC. I'm still leaning toward making a new APU based HTPC for XBMC myself.

Log in

Don't have an account? Sign up now