Az AMD az explicit API-k bevezetése óta nagyon fontosnak tartja, hogy a fejlesztők pontosan ismerhessék az egyes grafikus vezérlőiket, így az architektúráik fejlesztését folyamatosan dokumentálják. A korábban sok-sok Radeon generáció alapját adó GCN (Southern Islands), GCN2 (Sea Islands), GCN3/4 (Volcanic Islands/Polaris) és GCN5 (Vega) verziókhoz már elérhető a dokumentáció, illetve az újabb RDNA opció sem kivétel ebből a szempontból, most viszont publikusan hozzáférhetővé vált az RDNA 2 leírás egy 283 oldalas dokumentum formájában.
Mivel most nem beszélhetünk teljesen új architektúráról, így az előző generációs RDNA dizájnhoz képest kisebb változások vannak, ezekről pedig részletesen írtunk az RDNA 2-t elemző cikkünkben. A dokumentáció azonban mindig fényt derít pár ismeretlen részletre.
Az első generációs RDNA-hoz viszonyítva az RDNA 2 dizájn legfőbb újítása a sugárkövetés hardveres támogatása, illetve számos, mátrixszorzáshoz való ALU operáció bevezetése, utóbbiak nyilván a gépi tanulás tréning és dedukció szakaszához lesznek hasznosak. Megjelenik még az Image Load MSAA, továbbá lehetőség lesz az add thread-id forma alkalmazására a globális memóriabetöltések esetében, ami lehetővé teszi a vektorregiszterek és a helyi adatmegosztás közötti gyors adatmozgatást, méghozzá anélkül, hogy vektorregisztert kellene felhasználni a memóriacímek átadására.
Az utasítások tekintetében az S_MEMTIME-ot felváltja az s_getreg_b32 Sn, SHADER_CYCLES kombináció, míg a V_MAC_LEGACY_F32, a V_MAD_LEGACY_F32, a V_MAC_F32, a V_MADMK_F32 és a V_MADAK_F32 utasítások törlésre kerülnek, ezek helyett alkalmazhatók az FMA verzióik.
Végül lényeges változás még, hogy a vektorregiszterek és a helyi adatmegosztás allokációjáért felelős egység mérete megduplázódott, ami lényegében megkétszerezi az allokáció részletességét.