We didn’t want the hardware to be a puzzle that the developers would need to solve to make quality titles.
And just to give a specific example, this gets technical really quickly, please forgive me. The architecture we ended up with for PlayStation 4 used a 256-bit bus and a type of memory found in top of the line graphics cards called GDDR5. And the combination of this wide bus and this fast memory gives us a 176Gb per second which, and many of you will have to take my word for it, is quite a lot.
So with that much bandwidth straight forward programming techniques usually result in some pretty impressive graphics. Now we knew that was an alternative architecture that would be a bit easier to manufacture. In this architecture we would use a narrow 128-bit which would drop the bandwidth to 88Gb per second, which is not particularly good in next generation terms and would therefore really hurt the graphic performance.
So we then use some very fast on-chip memory to bring the performance back up. If we used EDRAM for this on-chip memory, we know that bandwidths as much as one terabyte per second, that’s 1,000 gigabytes a second, would be achievable. The catch though, is that the on-chip memory would need to be very small. And each game team would need to develop special techniques in order to manage it.
So to compare these two architectures, the one on the left [actual PS4 design shown] has 176Gb per second for any access, and the one on the right [alternate PS4 design shown] 88Gb per second if data is in system memory or 1,000 gigabytes per second if the data is in that tiny EDRAM. And at first glance the architecture on the right looks far superior to the one on the left. Sure it takes a while to figure out how to use it but once you figure out how to use that little cache of EDRAM you can unlock the full potential of the hardware. But to our new way of thinking, the straight forward approach on the left is definitely advantageous.