Discussion RDNA4 + CDNA3 Architectures Thread

Page 418 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

DisEnchantment

Golden Member
Mar 3, 2017
1,773
6,747
136





With the GFX940 patches in full swing since first week of March, it is looking like MI300 is not far in the distant future!
Usually AMD takes around 3Qs to get the support in LLVM and amdgpu. Lately, since RDNA2 the window they push to add support for new devices is much reduced to prevent leaks.
But looking at the flurry of code in LLVM, it is a lot of commits. Maybe because US Govt is starting to prepare the SW environment for El Capitan (Maybe to avoid slow bring up situation like Frontier for example)

See here for the GFX940 specific commits
Or Phoronix

There is a lot more if you know whom to follow in LLVM review chains (before getting merged to github), but I am not going to link AMD employees.

I am starting to think MI300 will launch around the same time like Hopper probably only a couple of months later!
Although I believe Hopper had problems not having a host CPU capable of doing PCIe 5 in the very near future therefore it might have gotten pushed back a bit until SPR and Genoa arrives later in 2022.
If PVC slips again I believe MI300 could launch before it

This is nuts, MI100/200/300 cadence is impressive.



Previous thread on CDNA2 and RDNA3 here

 
Last edited:

marees

Senior member
Apr 28, 2024
940
1,253
96
RDNA 4 in the mix for desktop APUs

Zen 6 olympic ridge iod to have 8 RDNA 4 CUs


 

Gideon

Golden Member
Nov 27, 2007
1,981
4,901
136
That's the funny bit, DXR is old. Almost 7 years old.
Pretty much an exact gap between the OG DirectX and DirectX9 (and DX9 and DX11). Too bad!
I really wish they'd create a DX Next and a Vulkan 2.0. GPUs have come a looooong way since DX 12 / Mantle days and the APIs are still modelled based on 10 year old GPUs. Don't take my word for it, take sebbbi's

(Sebastian Aaltonen is a graphics developer with over 20 years of experience including being a principal engineer for Ubisoft and Unity):


Sebastian Aaltonen said:
I am again writing my "No graphics API" blog post. Wrote the first C/C++ example that creates a shader pipeline, texture, RT, buffer, does a dispatch with sampler, output texture, buffer and root data struct containing all of them. Total 84 lines. Much better than Vulkan

And I am confident this API would be faster than Vulkan.

It is still missing barriers and some other stuff. But I have a good plan for barriers. Today barriers can be simpler than what they had to be with 10 years old hardware (that's how old DX12 and Vulkan already are).

I am sure some hardware vendor would say that due to some bug we can't do it like this and due to some limitation somewhere we can't do exactly like this. But that doesn't stop me. This is a visionary piece. Food for thought. It's designed to be 99% implementable with current HW.

The biggest trade-off is that this API can't support 10 year old hardware like Vulkan, Metal, DX12 and WebGPU can. Requires bindless. I am also assuming PCI-E resizable bar and ability to read compressed data without decompress steps, etc. Stuff that latest gen GPUs have.

am also assuming hardware that could support all the latest Vulkan extensions such as the improved binding model extension, buffer ptr extension, 8/16 bit types in shader and data interfaces, etc, etc...

CLARIFICATION: I am not intending to ship a graphics API. I am only writing mock code to show how much simpler it would be to write GPU code without a complex graphics API.

I really hope the just do a new ground up API that only supports modern GPUs. Is a lot thinner and includes GPU-driven draw calls from the start. And among other things would allow to trace rays from anywhere (no arbitary stupid shader stages) and no pipelines (solving a respectable amount of "shader compilation stutter" issues)
 
Last edited:

Gideon

Golden Member
Nov 27, 2007
1,981
4,901
136
How's that going to help solve it?
I'll have to dig up some a couple of year old posts about it as I'm not an expert on subject matter. Essentially the Pipeline Stages of Vulkan are a rather poor fit for modern hardware and a bad abstraction. This cyber_kinetist comment agrees to what many devs have been saying for eons:



As for the Shader Compilation that's due to usage of monolithic Pipeline State Objects (PSOs) that incorporate multiple shader stages and state configurations into a single objectpromise . Different combinations of render states and shaders create unique pipeline objects, leading to a combinatorial explosion of pipelines to compile.

You can actually use Vulkan without pipelines today:

But rather than having some arbitrary extension, this should be a core feature at the heart of the new API.

The linked Casey Muratori's post from 2015 (Vulkan advisory board) is 100% on the money, still


Not going to happen
Why not? It's not like DX12 or Vulkan 1.x is going away? Why must r we forever be stuck on legacy support?


Call it DX14, DX Next whatever ... It should be a brand new api. DX7 -> DX9 level transition with all modern features at it's core:

The biggest trade-off is that this API can't support 10 year old hardware like Vulkan, Metal, DX12 and WebGPU can. Requires bindless. I am also assuming PCI-E resizable bar and ability to read compressed data without decompress steps, etc. Stuff that latest gen GPUs have.

am also assuming hardware that could support all the latest Vulkan extensions such as the improved binding model extension, buffer ptr extension, 8/16 bit types in shader and data interfaces, etc, etc...

Also including GPU-driven draw calls, etc ...
 

Win2012R2

Senior member
Dec 5, 2024
792
795
96
I'll have to dig up some a couple of year old posts about it as I'm not an expert on subject matter. Essentially the Pipeline Stages of Vulkan are a rather poor fit for modern hardware and a bad abstraction.
But what's shader compilation got to do with it?

Shaders are typically written in higher level language that can only be pre-compiled (thus solving compile related shader stuttering) if the hardware target is known in advance and it won't change - like consoles. In case of PCs with multiple vendors and even different uarchs compilation of the shaders has to be done by the driver for that GPU, even new driver version can require recompile, nothing one can do about it apart from compiling all shaders before game starts proper, this should become quicker with DX adopting SPIR-V

Why not? It's not like DX12 or Vulkan 1.x is going away? Why must r we forever be stuck on legacy support?

Intel made their GPU to be more modern so it worked better in DX12, however it sucked in all previous versions and that cost them a LOT to recover. If new GPU is made for new much better API then it's very likely suck in previous DX versions, who is going to buy it? It takes many years to get even small new hardware features incorporated into APIs and even longer for developers to bother using them. The only place where such thing can possibly work is in consoles, but even they need PC sales, so having radically new stuff is problematic.

For both AMD and Nvidia old APIs are their moats.
 

Tuna-Fish

Golden Member
Mar 4, 2011
1,616
2,375
136
I'm not talking about excessive undervolts, rather mild ones. "Gamer stable" is what some might be trying but when I had Polaris mine was rock steady with a mild undervolt.

Yes, but among people not you there is variability in temperatures, power supply and silicon quality. All of that influences stability, and if they push the voltages down some marginal ones start to become unstable and this is a huge problem for their business.

When you UV, you are extracting some of the safety margin that's there for people with worse cooling, worse PSU and/or worse silicon. AMD cannot use this margin, even if you can.
 

Gideon

Golden Member
Nov 27, 2007
1,981
4,901
136
But what's shader compilation got to do with it?

Shaders are typically written in higher level language that can only be pre-compiled (thus solving compile related shader stuttering) if the hardware target is known in advance and it won't change - like consoles. In case of PCs with multiple vendors and even different uarchs compilation of the shaders has to be done by the driver for that GPU, even new driver version can require recompile, nothing one can do about it apart from compiling all shaders before game starts proper, this should become quicker with DX adopting SPIR-V
All of this is correct, and SPIR-V will certainly help. But DX12 / Vulkan are strictly worse than DX11 and below due to PSOs and the fact that "different combinations of render states and shaders create unique pipeline objects, leading to a combinatorial explosion of pipelines to compile." This is strictly a DX12 / Vulkan generation issue.

You'll have less shaders to precompile, easier time figuring out wat needs to be compiled JIT (when not doing full shader compilation on initial load) etc. A thread discussing it among devs:


Intel made their GPU to be more modern so it worked better in DX12, however it sucked in all previous versions and that cost them a LOT to recover. If new GPU is made for new much better API then it's very likely suck in previous DX versions, who is going to buy it? It takes many years to get even small new hardware features incorporated into APIs and even longer for developers to bother using them. The only place where such thing can possibly work is in consoles, but even they need PC sales, so having radically new stuff is problematic.

For both AMD and Nvidia old APIs are their moats.
I agree to most of it ,but you missed a crucial point. Nothing new needs to be added to modern GPUs. (RDNA2, Turing and above should support everything in sebbbi's list). Currently there are 2 big abstraction layers that are very far from the actual metal implementation both in the API and in the Driver. All of these can be kept (for DX11 and DX12) but eventually new APIs must be created. DX12 is already nearly 11 years old.

It might be too soon now, but next gen console launch looks to be a good timing for a switch. Eventually the oldest legacy APIs can be rewritten with a wrapper that maps to the new paradigm. Just like DXVK is used for DX9 and DX10 (and as the IHVs themselves do internally for OpenGL and other ancient APIs)
 

Mopetar

Diamond Member
Jan 31, 2011
8,298
7,302
136
No surprise. AMD has been juicing their cards since Polaris. I'm not sure why they can't figure out how to give them proper V/F curves.

It's because they only have two bins (there's probably a third, but that's for whatever isn't a complete brick that will be sold to some OEM to make limited run computers for the Asian market) and if they picked a more sane voltage setting there would be a lot fewer cards that qualify as a 9070 XT and would get some cores disabled. The other alternative is that they turn down the clock speeds and every 9070 XT performs say 5% worse out of the box.

If AMD were willing to make more bins they could have a 9070 (unchanged), a 9070 XT (full cores, reduced voltage and clocks), and a 9070 XTX (basically the 9070 XT as it is now) but most people would still just want the top card and AMD would probably just charge more for that premium model instead of letting everyone play the silicon lottery and maybe get a card that they can undervolt without losing any performance.

I'm not sure if they added time required to bin cards that way is something AMD or their board partners care about doing. Instead they'll pick whatever specs allow 75% (or whatever mix they're looking for) of silicon to qualify for and go with that.
 

eek2121

Diamond Member
Aug 2, 2005
3,276
4,821
136
If you are running Windows 11 24H2, that will screw up your gaming experience with Ryzen CPU's. Microsoft has not fixed this issue. AMD GPU's drivers were buttery smooth before 24H2.
Microsoft finally pushed it down to me a couple weeks ago. I've had zero issues with it. I've done a lot of gaming as of late because I am temporarily out of work (it was supposed to be permanent, but I enrolled in a medical study and the meds they gave me are changing my life...so I'm probably going back to work).
That's the funny bit, DXR is old. Almost 7 years old.
Pretty much an exact gap between the OG DirectX and DirectX9 (and DX9 and DX11). Too bad!
DirectX has taken years to get to the point where it is at. Progress takes time. It started with FF and things only gradual become more and more programmable.
I really wish they'd create a DX Next and a Vulkan 2.0. GPUs have come a looooong way since DX 12 / Mantle days and the APIs are still modelled based on 10 year old GPUs. Don't take my word for it, take sebbbi's

(Sebastian Aaltonen is a graphics developer with over 20 years of experience including being a principal engineer for Ubisoft and Unity):




I really hope the just do a new ground up API that only supports modern GPUs. Is a lot thinner and includes GPU-driven draw calls from the start. And among other things would allow to trace rays from anywhere (no arbitary stupid shader stages) and no pipelines (solving a respectable amount of "shader compilation stutter" issues)

Funny, I was thinking this the other day. If Microsoft would actually take control of progress and help push it forward, we'd be a lot better off. I feel like they really messed up when they decided DirectX 12 would be the last version ever. Programmable RT pipelines and a bunch of other stuff is still in the future, and a DirectX 13 could bridge the gap between 12 and 14. While I think they should absolutely have a conversation with the big hardware players, they should not be building the API strictly based off said input. If NVIDIA had it their way...oh boy.

There is also still a lot that can be done to simplify the API itself. If you've ever used DirectX 7 or below in a project, you'd love how simple it is to use. 12 is a beast.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |