Tinutugunan ng AMD ang Kontrobersya: RDNA 3 Shader Pre-Fetching Works Fine

Intel vs AMD

AMD RDNA 3 GPU Architecture Deep Dive

(Kredito ng larawan: AMD)

Ang mga ulat na ang mga RDNA 3 GPU ng AMD ay may sirang shader pre-fetch functionality ay hindi tumpak, ayon sa isang pahayag na ibinigay ng AMD sa Tom’s Hardware:

“Tulad ng mga nakaraang henerasyon ng hardware, ang shader pre-fetching ay sinusuportahan sa RDNA 3 ayon sa bawat [gitlab link (opens in new tab)]. Kinokontrol ng pinag-uusapang code ang isang pang-eksperimentong function na hindi na-target para sa pagsasama sa mga produktong ito at hindi papaganahin sa henerasyong ito ng produkto. Ito ay isang pangkaraniwang kasanayan sa industriya upang isama ang mga pang-eksperimentong tampok upang paganahin ang paggalugad at pag-tune para sa pag-deploy sa isang henerasyon ng produkto sa hinaharap.” — Tagapagsalita ng AMD sa Tom’s Hardware.

Ang pahayag ng AMD ay kasunod ng mga ulat ng media na ang kamakailang inilunsad na Navi31 silicon sa RDNA 3 graphics card ay may ‘non-working shader pre-fetch hardware.’ Ang pinagmulan ng haka-haka, @Kepler_L2, ay nagbanggit ng code mula sa mga driver ng Mesa3D na lumalabas na nagpapahiwatig ng shader pre-fetch ay hindi gumagana para sa ilang GPU na may A0 revision ng silicon (CHIP_GFZ1100, CHIP_GFX1102, at CHIP_GFX110).

Gayunpaman, sinasabi ng pahayag ng AMD na ang code na binanggit ng Kepler_L2 ay nauugnay sa isang pang-eksperimentong function na hindi nilayon para sa panghuling mga produkto ng RDNA 3, kaya hindi ito pinagana sa ngayon. Ang AMD ay nagsasaad na ang pagsasama ng mga pang-eksperimentong feature sa bagong silicon ay isang pangkaraniwang kasanayan, na tumpak — madalas nating nakikita ang diskarteng ito na ginagamit sa iba pang mga uri ng mga processor, tulad ng mga CPU.

Halimbawa, ipinadala ng AMD ang isang buong henerasyon ng mga produkto ng Ryzen 3000 na may mga TSV na kailangan para paganahin ang 3D V-Cache, ngunit hindi ginamit ang functionality hanggang sa pinakadulo ng panahon ng Ryzen 5000. Gayundin, ang Intel ay madalas na nagdaragdag ng mga tampok na maaaring hindi makapasok sa panghuling produkto, kasama ang pagpapagana ng DLVR na isang kamakailang halimbawa.

Naturally, ipagpalagay ng isa na kung gumagana nang perpekto ang isang ‘pang-eksperimentong’ feature, isasama ito sa panghuling produkto kung hindi ito nangangailangan ng anumang karagdagang mga akomodasyon (tulad ng karagdagang L3 cache slice na kailangan para sa 3D V-Cache). Nangangahulugan iyon na ang linya sa pagitan ng feature na ‘eksperimento’ o ‘masarap magkaroon ngunit hindi kritikal o kailangan para maabot ang mga target’ ay medyo malabo. Sa alinmang kaso, sinasabi ng AMD na gumagana ang mekanismo ng pre-fetch sa RDNA 3 ayon sa nilalayon.

Ang isa pang elepante sa silid ay ang paggamit ng AMD ng isang A0 stepping ng RDNA 3 silicon, na nangangahulugang ito ang unang pisikal na hindi binagong bersyon ng chip. Ito ay humantong sa pag-aangkin na ang AMD ay nagpapadala ng ‘hindi natapos na silikon,’ ngunit ang uri ng haka-haka ay hindi humawak ng tubig.

Hindi tumugon ang AMD sa aming mga query sa kung gumamit ba ito o hindi ng A0 silicon para sa unang wave ng RDNA 3 na mga CPU, ngunit sinasabi sa amin ng mga pinagmumulan ng industriya na ang kumpanya ay gumamit ng A0 silicon para sa Navi31. Sa katunayan, sinabi sa amin na inilunsad ang kumpanya gamit ang A0-revision na silicon para sa halos lahat ng 6000 series at karamihan sa 5000 series.

Hindi ito nagpapahiwatig ng isang ‘hindi natapos na produkto.’ Ang layunin sa lahat ng mga team ng disenyo ay ipako ang disenyo sa unang pag-ikot gamit ang gumagana, maipapadalang silicon. Ang Nvidia, halimbawa, ay madalas na nagpapadala ng A0 stepping silicon, masyadong.

Ang mga microprocessor ay maaaring dumaan sa ilang mga rebisyon sa haba ng kanilang buhay, kadalasan upang ayusin ang mga bug o pagkakamali at/o pagbutihin ang pagganap. Sa pangkalahatan, ang unang rebisyon ng silikon mula sa mga fab ay A0, at ang magkakasunod na ‘minor’ na mga respin ay ikategorya bilang A1, A2, at iba pa. Ang mas makabuluhang mga pagbabago sa silicon ay may posibilidad na lumipat sa isang ‘B’ o sunud-sunod na hakbang, at iba pa (nagdudulot ng B0, B1, at B2 na ritmo, halimbawa). Ito ay nagpapatuloy sa mas bagong alpha-numeric na mga designator habang ang chip ay pino.

Halos lahat ng kumplikadong chip ay may kilala at hindi kilalang pagkakamali at mga bug na tinutugunan ng firmware, driver, at mga solusyon sa software na maaaring mabawasan o maalis ang mga isyung iyon, at ipapadala ang mga ito sa ganoong paraan — iyon ang likas na katangian ng modernong disenyo at produksyon ng semiconductor. Halimbawa, ang Skylake na henerasyon ng mga processor ng Intel ay ipinadala na may 53 kilalang errata, at makalipas ang anim na buwan, naglista ang Intel ng isa pang 40 errata. Ito ay karaniwan dahil ang mga cycle ng disenyo ng chip ay mahaba, madalas sa pagkakasunud-sunod ng mga taon, kaya madalas ay walang oras upang i-respin ang chip upang matugunan ang mga maliliit na isyu. Nakikita rin namin ang mga katulad na uso mula sa iba pang mga uri at henerasyon ng mga processor.

Gayunpaman, hindi lahat ng errata ay maaaring ayusin sa pamamagitan ng mga workaround, kaya ang ilang mga isyu ay lilinisin sa mga susunod na hakbang ng silicon — kung ituturing na kinakailangan. Ngunit ang layunin ng anumang koponan ng disenyo ay nananatiling pareho, na maghatid ng silikon sa unang pag-ikot na maaaring matugunan ang mga layunin sa disenyo para sa isang produkto sa pagpapadala. Sa paggalang na iyon, ang paggamit ng A0 silicon ay itinuturing na isang home run.

Marami ring mga halimbawa ng mga chip na nagkaroon ng mga isyu sa proseso ng disenyo/pag-verify na nangangailangan ng maraming hakbang upang makarating sa merkado. Halimbawa, huling nalaman ang Sapphire Rapids na nasa 12th stepping, at hindi pa rin ito naipapadala sa volume (A0, A1, B0, C0, C1, C2, D0, E0, E2, E3, E4, at E5 stepping — technically 7 base spins). Naturally, na humantong sa malubhang pagkaantala sa produksyon at hindi nakuha ang mga petsa ng paglulunsad.

Ang paggawa ng mga chips ay mahirap; ang mga ito ang pinaka-sopistikadong klase ng mga device na ginawa ng sangkatauhan, ngunit ginawa ang mga ito na may halos hindi maisip na maliliit na feature. Na humahantong sa mga isyu at pagkakamali na maaaring mangailangan ng ilang mga pagbabago upang maalis. Huwag pansinin ang mga nag-aangkin na ang isang A0 stepping ay palaging katumbas ng ‘hindi natapos na silikon.’ Ang tagumpay ay nasusukat sa pamamagitan ng pagpapadala ng maisasagawa na silicon na nakakatugon sa mga target sa unang pamamasyal.

Inaasahan namin ang ilang sakit sa pagngingipin habang binubuo ng AMD ang unang henerasyon ng mga GPU na nakabatay sa chiplet, ngunit hindi target ang kamakailang pag-ikot ng haka-haka. Ipapaalala sa iyo ng mga istoryador ng chip na ang pag-unlad mula sa hindi kapani-paniwalang magaspang na Ryzen 1000 chips tungo sa pinakintab na henerasyon ng Ryzen 3000 ay ganap na muling tinukoy ang isang multi-bilyong dolyar na merkado at napinsala ang isang nakabaon na nanunungkulan. Makakahanap ba ng parehong antas ng tagumpay ang mga GPU na nakabatay sa chiplet? Sasabihin ng oras, ngunit tulad ng makikita mo sa aming pagsusuri sa AMD Radeon RX 7900 XTX at XT, nakahanap na kami ng maraming dahilan upang humanga sa mga bagong card ng AMD.