5 ms·
+1. An important non-obvious detail for AMD is that they (at least in the past, I assume for this as well) have kept the instruction timings similar from genera
by senkora 2y ago
+1. An important non-obvious detail for AMD is that they (at least in the past, I assume for this as well) have kept the instruction timings similar from generation to generation of consoles.
Different x86 micro-architectures benefit from writing the machine code in slightly different ways. Games are highly optimized to the specific micro-architecture of the console, so keeping that stable helps game developers optimize for the console. If you suddenly changed the micro-architecture (if switching to Intel), then old games could suddenly become janky and slow even though both systems are x86.
(This would only matter if you were pushing performance to the edge, which is why it rarely matters for general software development, but console game dev pushes to the edge)
So it isn't just the graphics APIs that would change going from AMD to Intel, but the CPU performance as well.
- mikepavone 2y ago> An important non-obvious detail for AMD is that they (at least in the past, I assume for this as well) have kept the instruction timings similar from generation to generation of consoles. What? The Jaguar-based CPU in the PS4 has both a much lower clock and substantially lower IPC than the Zen 2 based one in the PS5. The timings are not remotely the same and the micro-architectures are quite different. Jaguar was an evolution of the Bobcat core which was AMD's answer to the Intel Atom at the time (i.e. low cost and low-power, though it was at least an out-of-order core unlike contemporary Atoms). Going from GCN to RDNA on the GPU side is also a pretty significant architectural change, though definitely much less than the going from AMD to Intel would be.
- stonethrowaway 2y ago[flagged]
- senkora 2y agoI did some more research and I was wrong. My source was an AMD tech talk from years ago where they mentioned keeping instruction timings the same for backwards compatibility reasons. I believe they were talking about this for the XBox One X: https://en.wikichip.org/wiki/microsoft/scorpio_engine#Overview https://en.wikichip.org/wiki/microsoft/scorpio_engine#Overvi... (and a similar chip for the PS4 Pro) So basically, they upgraded and lightly enhanced the Jaguar architecture, shrunk the process (28nm -> 16nm), but otherwise kept it the same. AMD Zen was released around this time and was far superior but they decided to stick with Jaguar in order to make sure that instruction timings were kept the same. I guess that they didn't want two hardware revisions of the same console generation running on different micro-architectures, but they were okay switching the micro-architecture for the next console generation.
- jheriko 2y agoyou clearly haven't played a modern game :P cpu timings taken care around by developers is 10-15 years out of date. most of them these days dont even know what a dot product is, how to find the distance to a point or a straight line in-between two... and the people they rely on to do this for them make horrendous meals of it. but yeah, sure, cpu instruction timings matter.
- DaoVeles 2y agoI was about to say. I bailed out of the industry just as the Xbox One/Ps4 was coming in. Even with the 360/Ps3, it was considered wise to try and steer clear of that kind of low level stuff just for ones sanity. When the X1/Ps4 came in, it was completely abandoned, turns out x86 compilers combined with OoO execution just made that kind of tinkering not only nearly pointless but sometime actually hurt performance. Nowadays,I suspect it is almost entirely in the hands of the compilers, the API's and the base OS to figure out the gritty details.
- xgkickt 2y agoThere are still manual optimizations that can be done (non-temporal writes where appropriate for example), but nothing like the painstaking removal of Load-Hit-Stores and cache control of the 360/PS3 era.
- Meganet 2y agoThe new chip will be relevant faster. I would bet that bandwidth between certain components is a lot more critical. Or NUNA or bandwidth between cores. Im surprised that cpu instruction latency is mentioned before other
- deaddodo 2y ago> Different x86 micro-architectures benefit from writing the machine code in slightly different ways. Games are highly optimized to the specific micro-architecture of the console, so keeping that stable helps game developers optimize for the console. While that can be true, very few gamedev companies these days optimize to that degree. They almost all use off-the-shelf middleware and game engines that are built to support all of the platforms. The companies that do go through that effort tend to have very notable releases. Nobody is hand-tuning Assembler code these days to fit into tight instruction windows. At least, not outside of some very specific logic fragments. Instead they're all writing generic interrupt-based logic. Which is fine, as that's what the newer CPUs expect and optimize for internally. In addition, the difference in the Zen generation gap is as different as switching to Intel. We're talking fairly different cache coherency, memory hierarchies, CCX methodologies, micro-op and instruction timings, iGPU configurations, etc. That all being said, AMD was going to beat Intel regardless because of established business relationships and their current internal struggles (both business-wise and R&D) making it fairly difficult for them to provide an equivalent alternative.
- MichaelZuo 2y agoHow would you explain cross PS5/PC releases being much more efficient on the PS5? e.g. Horizon Forbidden West needing a much better GPU on PC to run at the same level of fidelity as the PS5. If not for special tuning specific to the PS5’s differences. (I can imagine Windows bloat and other junk requiring an additional 10% to 20%, but not 30% to 50%.)
- jitl 2y agoThe comment above is elaborating on x86 micro-architecture, the differences between how the CPU handles x86 instructions specifically. The overall system architecture is different between PC, which has discrete memory systems for the CPU and GPU, and a very long pathway between GPU memory and system/CPU memory, versus today's consoles which have unified memory for CPU+GPU, and optimized pathways for loading from persistent storage too. Consolesuse their own graphics APIs, but you would have any vendor you contract with for graphics support your native graphics API and everything would be "fine". PS5 games use GNM/GNMX Playstation proprietary graphics APIs. Usually PC ports of console native games re-implement the rendering engine using the PC graphics APIs like DirectX or Vulkan. The re-implementation is probably less efficient and less tuned.
- lxgr 2y agoGiven the size of such a contract, wouldn't it be reasonable for Sony to just request equal or better instruction latency for everything relevant from the old CPU?