Digital Foundry Article Technical Discussion [2024]

Sure, but are we then saying that the ideas behind any of these other things are not valuable? Many techniques that are simple to implement are shared freely, including basically all of the foundation of computer graphics. DLSS is a case where NVIDIA very much could still today - many years later - be profiting primarily off their ML hardware since it is likely not very practical to run on GPUs without similar hardware. Intel could likely do it of course, but I don't think the distance between DLSS and XeSS is really large enough to be a primary driver of why one would buy one or the other.

That's my point: ideas should be free to be shared, but specific implmentations, not necessarily.
Again using DLSS as an example: I agree if NVIDIA actually publishes the weights some people might be able to improve on it (e.g. fine tuning against some edge cases for a specific game), but if everyone can use the weights I'm not sure if NVIDIA would started such project at the first place. I mean, apparently no one else did.
 
I'm watching this before the DF interview

He calls the PS5 gpu an RDNA2 gpu. Wasn't this one of the things that people questioned? Wasn't there some discussion about whether PS5 was RDNA1 or 2 on this forum?

Yeah, there was. PS5 is "full RDNA2". Only things it's missing are ... almost all the things that were added to RDNA1 to make it RDNA 2. Except for RT, where it got v1 compared to RDNA2's v1.1. But there seems to be a very good reason for this.

PS5 was supposed to be almost aligned with PC RDNA1 and launch in 2019 like PC RDNA1. Navi 10 and PS5 were supposed to be almost twins in that regard. PS5 was delayed during development, probably to add boost clocks and/or RT, which it did not originally have. And so despite missing most of the features that differentiate PC / Xbox RDNA2 from RDNA 1, for marketing reasons Sony and AMD called it RDNA2.

In reality, it's clearly beyond PC RDNA1 in features, but clearly behind PC / Xbox RDNA2. It's got the most important addition though: RT. But good luck explaining that to gamers. The moment MS made a huge fuss about how they had RDNA2, Sony were going to say they had it too.

In Road to PS5, Cerny said something to the effect that if AMD released a PC product very similar to PS5 at a similar time, it was proof that their very close collaboration had been successful. That product was IMO clearly Navi 10. Add RT to Navi 10 and that's basically PS5. Same configuration, same ROPs, same Geometry Engine, same lack of mixed precision integer ops and all of that.

I'd probably go further. I don't think that PS5 is simply a custom RDNA part, I think PS5 might have helped define the starting point for RDNA itself: a common set of requirements that suited both PC and console and allowed for shared development.

The reality is probably far more interesting than just "is it 1 or 2". ¯\_(ツ)_/¯
 
Last edited:

Their round-table about the ps5 pro event/presentation.

I thought Oliver's interview with Mark Cerny was well done. I also appreciate Mark Cerny's talk explaining the tech. I even kind of like how he deferred a few answers in his interview with Oliver to Mike Fitzgerald to keep him included. Seems like he'd be a good person to work with.
 
I'm watching this before the DF interview

He calls the PS5 gpu an RDNA2 gpu. Wasn't this one of the things that people questioned? Wasn't there some discussion about whether PS5 was RDNA1 or 2 on this forum?
For PS5 they use GFXIP 1013 and on PC it's GFX 1030 while with Xbox series consoles it's GFX 1020 ...

RDNA2 is just a "marketing brand" for a specific set of GPUs that shares some technologies in common with each other. It's all somewhat relative ...
 
Bit surprised at the admission of information around removing the double float point launch. I guess, I would ask why they didn't keep it in. But the recompile/binary costs were too high for them to consider it.

There doesn't seem to be emulation happening as much here as I once thought, so all the talk around the binaries is interesting.
 
Right those answers are with respect to the GNU-style definition. But that has little relevance here, and nothing to do with the topic of sharing knowledge/research. The relevant question in terms of knowledge sharing is can I learn from what Unreal does and build on it myself, for which I will quote the FAQ:



I don't mean to get on a big tangent here, but I highly disagree with the notion that Unreal is contributing at all to any lack of industry advancement and information-sharing. There's lots of things you can complain about Epic, but Unreal pretty much defines the high road as far as that stuff goes, especially compared to hardware and platform vendors.
How much can I copy without paying from UE5, before laywers poke me?
 
Bit surprised at the admission of information around removing the double float point launch. I guess, I would ask why they didn't keep it in. But the recompile/binary costs were too high for them to consider it.
Both GFX11 and GFX10 implementations have incompatible sets of instruction encodings so it's not as if the upgraded SKU could move to a new ISA without the guarantee of backwards compatibility ...

PS5 is BC with PS4 software because GFX7 (PS4 GPU ISA) is a strict subset of GFX10 (PS5 GPU ISA). Even though GFX9 introduced lower precision packed math feature, it's not necessarily "forward compatible" with GFX10's lower precision packed math feature since GFX10 is constrained by it's design goal (BC) of being made for console customers ...

It's not all that big of a surprise if they chose not to reimplement/backport the VOPD feature on another custom GFX10 implementation ...

Programmers can also potentially hard code (magic numbers anyone ?) the wave sizes in their source code so they'd have to rewrite some of the code if they were explicitly using wave32 to gain the benefits of VOPD. If the program was designed against wave64 the compiler might very well could have applied the feature for optimization purposes ...
 
Both GFX11 and GFX10 implementations have incompatible sets of instruction encodings so it's not as if the upgraded SKU could move to a new ISA without the guarantee of backwards compatibility ...

PS5 is BC with PS4 software because GFX7 (PS4 GPU ISA) is a strict subset of GFX10 (PS5 GPU ISA). Even though GFX9 introduced lower precision packed math feature, it's not necessarily "forward compatible" with GFX10's lower precision packed math feature since GFX10 is constrained by it's design goal (BC) of being made for console customers ...

It's not all that big of a surprise if they chose not to reimplement/backport the VOPD feature on another custom GFX10 implementation ...

Programmers can also potentially hard code (magic numbers anyone ?) the wave sizes in their source code so they'd have to rewrite some of the code if they were explicitly using wave32 to gain the benefits of VOPD. If the program was designed against wave64 the compiler might very well could have applied the feature for optimization purposes ...
I don’t have a lot of understanding here; but if this is so. What are they doing to allow PS4 ISA to run on PS5?

And by your statements and Cernys, how will they get PS6 which will be UDNA to run PS5 code?

Like what are they doing to allow the ISA to work without a recompile?
 
I don’t have a lot of understanding here; but if this is so. What are they doing to allow PS4 ISA to run on PS5?

And by your statements and Cernys, how will they get PS6 which will be UDNA to run PS5 code?

Like what are they doing to allow the ISA to work without a recompile?
With PS4, the GPU ISA is as I mentioned before a *subset* of the PS5 GPU's ISA ... (the RDNA/2 ISA docs don't mention this but they even secretly brought back an instruction that was supposedly since been removed accordoing to the GCN3 ISA docs)

It may not seem intuitive at first but but you can iterate upon existing designs with extensions much like as seen in CPU designs. x86 implementations make additive changes (MMX/SSE/BMI/etc.) to it's ISA all the time without breaking compatibility in regards to prior instruction encodings ...

It's not very common to apply this design strategy in regards to GPU hardware design since IHVs create interfaces like drivers to hide these details for the express intent of maintaining portability between different incompatible hardware design generations but that model doesn't work for consoles with their lower level programming paradigm so current GPU hardware design had to take into account prior GPU ISA design in order for them to easily meet their BC commitment for console vendors. It's more helpful to conceptualize RDNA 1/2 as an architectural extension to console implementations of GCN2 rather than an entirely new clean sheet HW design ...

GFX10 and GFX11 designs also have different geometry pipelines too. On GFX10, we had our legacy geometry pipeline (LSHS/ESGS/VS stages) and even though GFX9 introduced more unified design as opposed to GFX7 they only had to be concerned about the rare case when both tessellation and geometry shaders are enabled which may cause ES outputs to spill beyond LDS memory. Even though the legacy geometry pipeline shader stages have changed, the emulation cost involved of a more grannular geometry pipeline likely amounts to nothing more than some trivial extra couple function calls. With GFX11, we don't have a legacy geometry pipeline so attempting to emulate more grannular stages may make graphics state changes more costly or LDS memory spilling severe ...
 
I agree if NVIDIA actually publishes the weights some people might be able to improve on it (e.g. fine tuning against some edge cases for a specific game), but if everyone can use the weights I'm not sure if NVIDIA would started such project at the first place. I mean, apparently no one else did.

I don’t think comparing Nvidia and ISVs is that useful in the current market as they’re working under very different incentives. Also sharing neural network weights and sharing high level details of a new rendering method aren’t exactly the same thing. I imagine ISVs see significant upside from engaging in academic discussion with other engine developers as the flow of information is mutually beneficial. I don’t know what Nvidia gains by sharing weights of a trained ML model besides giving the competition a free pass. It’s not like the theory behind machine learning is some Nvidia secret. They didn’t invent tensors and they certainly didn’t invent transformer models. Nvidia’s advantage is in the practical application of widely understood concepts.

Everyone knows how the stock market works. Should all traders share the details of their trading strategies so everyone can copy them?

It’s also not fair to say that Nvidia doesn’t share details of their research. They seem to partner with a lot of professors, universities, grad students etc and that work is shared in public papers and dissertations.
 
Cerny talks exactly how I wish people did in these topics! The conversation is very genuine with no fluff or self-promotion, he avoids ill-defined terms (eg. self corrects 'better' to 'more optimal'), and he uses 'ML', not 'AI'! Only time he used 'AI' was talking about game features where you'd want 'AI'; all the algorithms for upscaling and denoising and everything are ML, without any attempt at 'intelligence'.

Surprised he was surprised at GPU scalability though! As we said for PS4 Pro, "why do they need to butterfly? Why can't they just scale across the GPU like PC?" And indeed you can, so PS4 Pro's engineering wasn't necessarily ideal. Which poses the question, what could Sony have done instead?
 
Surprised that Sony is going exactly the NVIDIA way, ML denoising, frame generation, ray tracing, path tracing, and further ML research for ML rendering in general. I didn't expect them to go exactly the same route step by step like that.
 
Surprised that Sony is going exactly the NVIDIA way, ML denoising, frame generation, ray tracing, path tracing, and further ML research for ML rendering in general. I didn't expect them to go exactly the same route step by step like that.
I mean, where else can they go? At least they are getting AMD to take it seriously.

I'm surprised, if anything, by AMD waiting so long to do anything about their GPU's inadequacy. What was stopping them?

I wouldn't be surprised if some C-suite didn't want to admit that not investing earlier in ML and ray tracing was the wrong choice, and was opposing any investments.
 
Surprised that Sony is going exactly the NVIDIA way, ML denoising, frame generation, ray tracing, path tracing, and further ML research for ML rendering in general. I didn't expect them to go exactly the same route step by step like that.
What were you expecting them to do? It's the only obvious path forwards for the industry.
 
Eh I'm not convinced. We are still in the hype phase for ML and everyone has FOMO including Sony. It's true though that nobody has come up with an alternative to the "Nvidia way" which is unexpected.
Then what's the solution? The gains per mm² from applying ML methods seems far, far higher than you'd get with using that for rasterising. I guess the only alternative is to move stuff onto RAM subsystems, but I don't think that's a straight replacement. You can't take 10% of GPU die area and divert those resources to more RAM BW/lower latency in any meaningful way, where you can turn it into ML silicon.

Let's imagine Sony didn't go the ML route with PS5 Pro. What would it look like? It'd be pants, quite frankly. You'd have a literal maybe 50% faster compute for which you'd be trying to get faster framerates and more pixels.

Moore's law is dead. Silicon progress has collapsed. The only way forwards now is paradigms. The primary concern is how far ML can go. I'm far less optimistic about it than other advocates and I wouldn't be surprised if there aren't serious limits in what it can finally achieve, but it's also clearly the best way anyone's shown to get more performance from limited silicon and has scope to improve over the years over what it's currently achieving, which is pretty phenomenal.
 
The primary concern is how far ML can go. I'm far less optimistic about it than other advocates and I wouldn't be surprised if there aren't serious limits in what it can finally achieve, but it's also clearly the best way anyone's shown to get more performance from limited silicon and has scope to improve over the years over what it's currently achieving, which is pretty phenomenal.

It's why I'm looking forward to the 5000 series launch. Nvidia doesn't let off the gas. I expect a decent amount of info around their progression of current and any net new ML based technologies.
 
Then what's the solution?

No idea. Back in 2018 when Turning launched nobody thought ML based upscaling was the future. It was quite the opposite. Have all other ideas just died in the last 6 years?

The gains per mm² from applying ML methods seems far, far higher than you'd get with using that for rasterising. I guess the only alternative is to move stuff onto RAM subsystems, but I don't think that's a straight replacement. You can't take 10% of GPU die area and divert those resources to more RAM BW/lower latency in any meaningful way, where you can turn it into ML silicon.

Maybe those transistors could be spent on better efficiency instead of throwing more brute force hardware at the problem. ML upscaling only helps with resolution dependent workloads. How about hardware support for micro triangles?

Let's imagine Sony didn't go the ML route with PS5 Pro. What would it look like? It'd be pants, quite frankly. You'd have a literal maybe 50% faster compute for which you'd be trying to get faster framerates and more pixels.

Moore's law is dead. Silicon progress has collapsed. The only way forwards now is paradigms. The primary concern is how far ML can go. I'm far less optimistic about it than other advocates and I wouldn't be surprised if there aren't serious limits in what it can finally achieve, but it's also clearly the best way anyone's shown to get more performance from limited silicon and has scope to improve over the years over what it's currently achieving, which is pretty phenomenal.

I agree new paradigms are needed. It seems plausible that there are other potential paradigm shifts besides ML upscaling especially on consoles that have less legacy baggage. It's just weird that everyone is just building Turing now. A physics co-processor in a console would be cool. Then Sony could market the amazing clothing in Final Fantasy that can't run on any other hardware.
 
Back
Top