Nvidian uudet Rubin-grafiikkasuorittimet hyödyntävät ohjelmistoemulointia FP64-suorituskyvyn parantamiseksi HPC:lle, mikä haastaa AMD:n viimeaikaisen johdon tällä alalla, vaikka AMD suhtautuu varauksella menetelmän soveltuvuuteen käytännössä. Kaksinkertainen tarkkuus liukulukulaskenta (FP64) on välttämätön nykyaikaisille HPC- ja tieteellisille laskentasovelluksille. Nvidian äskettäin julkistetut Rubin-grafiikkasuorittimet tarjoavat 33 teraFLOPS FP64:n huippusuorituskykyä ilman emulointia, mikä on yhden teraFLOPin vähemmän kuin neljä vuotta vanha H100. Kun ohjelmistoemulointi on käytössä Nvidian CUDA-kirjastoissa, siru voi saavuttaa jopa 200 teraFLOPS FP64-matriisin suorituskykyä. Tämä edustaa 4,4-kertaista kasvua sen lähtevien Blackwell-kiihdytinten laitteistoominaisuuksiin verrattuna. Dan Ernst, Nvidian supertietokonetuotteiden vanhempi johtaja, sanoi: ”Löysimme monien kumppaneiden kanssa tehtyjen tutkimusten ja omien sisäisten tutkimustemme perusteella, että emuloinnista saatava tarkkuus on vähintään yhtä hyvä kuin tensoriydinlaitteiston tarkkuus.” Nicholas Malaya, AMD-stipendiaatti, huomautti: ”Se on melko hyvä joissakin vertailuarvoissa, ei ole ilmeistä, että se on hyvä todellisissa fysikaalisissa tieteellisissä simulaatioissa.” Malaya ehdotti, että FP64-emulointi vaatii lisätutkimusta ja kokeilua. FP64 on edelleen tieteellisen laskennan standardi dynaamisen alueensa ansiosta, joka pystyy ilmaisemaan yli 18,44 kvintiljoonaa (264) ainutlaatuisia arvoja. Nykyaikaiset tekoälymallit, kuten DeepSeek R1, päinvastoin, koulutetaan usein FP8:ssa, joka voi ilmaista 256 ainutlaatuista arvoa. HPC-simulaatiot perustuvat fyysisiin perusperiaatteisiin, joten ne eivät siedä virheitä, toisin kuin tekoälyn työkuormat. Malaya selitti: ”Heti kun alkaa syntyä virheitä, nämä rajalliset virheet leviävät ja aiheuttavat esimerkiksi räjähdyksiä.” Ajatus pienempien tarkkojen tietotyyppien käyttämisestä FP64:n emulointiin ei ole uusi. Ernst mainitsi: ”Emulointi on vanhaa kuin lika. Meillä oli emulointi 50-luvun puolivälissä ennen kuin meillä oli laitteistoa liukulukulle.” Vuoden 2024 alussa Tokion ja Shibauran teknologiainstituuttien tutkijat julkaisivat paperin, jossa tutkittiin tätä käsitettä. Heidän menetelmänsä osoitti, että FP64-matriisioperaatiot voitiin jakaa useiksi INT8-operaatioiksi, jolloin saavutettiin alkuperäistä parempi suorituskyky Nvidian tensoriytimillä. Tämä Ozaki-mallina tunnettu lähestymistapa muodostaa perustan Nvidian viime vuoden lopulla julkaistuille FP64-emulointikirjastoille. Ernst selvensi: ”Se on edelleen FP64. Se ei ole sekoitettua tarkkuutta. Se on vain tehty ja rakennettu eri tavalla laitteiston näkökulmasta.” Nykyaikaiset GPU:t sisältävät matalan tarkkuuden tensoriytimiä. Esimerkiksi Rubinin tensoriytimet pystyvät 35 petaFLOPS:n tiheään FP4-laskentaan. FP64:ssä nämä sirut ovat yli 1000 kertaa hitaampia. Ernst selitti, että näiden matalan tarkkuuden tensoriytimien rakentamisen ja käytön tehokkuus sai tutkimaan niiden käyttöä FP64-laskennassa. ”Meillä on laitteisto, yritetään käyttää sitä. Se on supertietokoneiden historiaa”, hän sanoi. AMD ilmaisi huolensa FP64-emuloinnin tarkkuudesta. Malaya ilmoitti, että FP64-emulointi toimii hyvin hyvin säädetyissä numeerisissa järjestelmissä viitaten High Performance Linpack (HPL) -benchmarkiin. Kuitenkin, ”kun tarkastellaan materiaalitieteitä, polttokoodeja, nauhallisia lineaarisia algebrajärjestelmiä, sellaisia asioita, ne ovat paljon huonommin ehdollistettuja järjestelmiä, ja yhtäkkiä se alkaa hajota”, hän sanoi. Malaya huomautti, että FP64-emulointi ei ole täysin IEEE-yhteensopiva, koska Nvidian algoritmit eivät ota huomioon vivahteita, kuten positiivisia nollia vastaan negatiivisia nollia, eivät numerovirheitä tai äärettömän määrän virheitä. Pienet virheet emuloinnin välioperaatioissa voivat johtaa epätarkkuuksiin. Toiminnan lisääminen tämän lieventämiseksi voi mitätöidä suorituskyvyn edut. Malaya raportoi myös: ”Meillä on tietoja, jotka osoittavat, että käytät Ozakin muistikapasiteettia noin kaksi kertaa enemmän FP64-matriisien emulointiin.” AMD keskittyy siksi erikoislaitteistoihin, jotka tarjoavat kaksinkertaisen ja yhden tarkkuuden, ja sen tuleva MI430X hyödyntää siruarkkitehtuuria suorituskyvyn vahvistamiseksi. Ernst myönsi puutteita Nvidian toteutuksessa. Hän väitti, että positiiviset/negatiiviset nollat eivät ole kriittisiä useimmille HPC:n harjoittajille. Nvidia on kehittänyt lisäalgoritmeja havaitsemaan ja lieventämään ongelmia, kuten ei-lukuja ja äärettömiä lukuja. Mitä tulee muistin kulutukseen, Ernst myönsi, että se voi olla korkeampi, mutta totesi, että tämä lisäkustannus liittyy toimintaan, ei sovellukseen, joka sisältää tyypillisesti muutaman gigatavun matriiseja. Hän väitti myös, että IEEE-yhteensopivuusongelmia ei usein esiinny matriisin kertolaskutapauksissa. ”Useimmat käyttötapaukset, joissa IEEE-yhteensopivuusjärjestyssäännöt ovat pelissä, eivät esiinny matriisi- ja matriisikertotapauksissa. Ei ole olemassa DGEMM:ää, joka pyrkii noudattamaan tätä sääntöä joka tapauksessa”, Ernst kertoi. FP64-emulointi on ensisijaisesti tehokas HPC-sovellusten osajoukossa, jotka perustuvat tiheään yleismatriisikerroin (DGEMM) -toimintoihin. Malaya arvioi, että 60–70 prosentissa HPC-työkuormista emulointi tarjoaa minimaalisen hyödyn. ”Analyysissämme suurin osa todellisista HPC-työkuormista riippuu vektori-FMA:sta, ei DGEMM:stä”, hän sanoi. Vektoriraskaita tehtäviä, kuten laskennallista nestedynamiikkaa, varten Rubin-grafiikkasuorittimet toimivat hitaamilla FP64-vektorikiihdyttimillä CUDA-ytimissä. Ernst korosti, että korkeampi FLOPS ei aina ole hyödyllinen FLOPS, koska muistin kaistanleveys usein rajoittaa todellista suorituskykyä. Hän viittasi TOP500:n vektorivoimakkaaseen High Performance Conjugate Gradient -vertailuarvoon, jossa prosessorit johtavat usein muistialijärjestelmiensä korkeampien bittien FLOPS-arvojen vuoksi. Uusilla supertietokoneilla, joissa on integroitu Nvidian Blackwell- ja Rubin-grafiikkasuorittimet, FP64-emuloinnin toimivuus testataan. Algoritmien luontainen riippumattomuus tietystä laitteistosta mahdollistaa mahdolliset parannukset ajan myötä. Malaya vahvisti, että AMD tutkii myös FP64-emulointia siruilla, kuten MI355X, ohjelmistolippujen avulla sopivien sovellusten tunnistamiseksi. Hän ilmoitti, että IEEE-yhteensopivuus vahvistaisi lähestymistavan varmistamalla yhdenmukaiset tulokset emuloinnin ja omistetun piin välillä. Malaya totesi: ”Jos voin mennä kumppanin luo ja sanoa, että käytä näitä kahta binaaria: tämä antaa sinulle saman vastauksen kuin toinen ja on nopeampi, ja kyllä, me teemme konepellin alla jotain suunnitelmaa – luule, että se on pakottava argumentti, joka on valmis parhaaseen katseluun.” Hän lisäsi, että tietyt sovellukset saattavat olla luotettavampia emuloinnilla, ja ehdotti: ”Meidän yhteisönä pitäisi rakentaa sovelluskori katseltavaksi.”
Source: Nvidia Rubin GPU:t: 200 teraFLOPS FP64 ohjelmistoemulaatiosta



