Linus Torvalds: 'Loodan, et AVX512 sureb valusasse surma'

Linus Torvalds on kirjutanud mitu foorumipostitust, milles on arutatud tema vastumeelsust paljude SIMD-käskude komplektide vastu, samuti viha nii FPU võrdlusaluste kui ka üldiselt Inteli 512-bitiste vektorilaiendite AVX-512 vastu. Linus, nagu tavaliselt, ei tõmba selle peale ühtegi lööki. Siin on a lühike proov:

Loodan, et AVX512 sureb valusasse surma ja et Intel hakkab tegelikke probleeme lahendama, selle asemel, et proovida luua maagilisi juhiseid, et seejärel luua võrdlusnäitajaid, millel nad saaksid hea välja näha ...



Ma tahan FP võrdlusaluseid absoluutselt ja mõistan, et teised inimesed hoolivad sellest sügavalt. Ma arvan lihtsalt, et AVX512 on täpselt vale asi. See on minu lemmikloom. See on suurepärane näide sellest, mida Intel on valesti teinud, osalt lihtsalt suurendades turu killustatust.



Torvalds tunnistab oma erapoolikust sellel teemal ja soovitab ühel hetkel isegi oma arvamust a näpuotsatäis soola. Kuid ta toetab oma argumenti mõne kindla kõnepunktiga, millest üks saavutas peaaegu universaalse kokkuleppe: AVX-512 peamine probleem on see, kuidas tugi on kogu turul killustatud.

Arendajatele reeglina ei meeldi konkreetsete arhitektuuride koodide ümberkirjutamine ja käsitsi häälestamine, eriti kui see käsitsi häälestamine kehtib ainult vastava rakenduse käitamiseks mõeldud protsessorite alamhulga kohta. Kui töötate HPC-s või masinõppes, kus AVX-512 serverid on levinud, pole see probleem - kuid statistiliselt on seda väga vähe inimesi. Enamik tarkvara töötab laias valikus Inteli protsessorites, millest enamik ei toeta AVX-512. Mida nõrgem on kogu Inteli tootesarja tugi, seda vähem on arendajatel põhjust AVX-512 kasutusele võtta.



Pilt autor Colfaxi uuringud

Kuid probleemid pole peatus seal. Üks põhjus, miks arendajad võivad AVX-512 kasutamist tõrjuda, on see, et protsessor saab selle režiimi sisselülitamisel suure sagedusega löögi. Travis Downs on kirjutanud vapustav sügav sukeldumine sellesse, kuidas käitub Xeon W-2104 AVX-512 seade koormuse all.

Ta leidis, et lisaks sageduse vähenemise tõttu teadaolevale jõudluse langusele on 512-bitise täitmisrežiimi sisse- ja väljalülitamisel ka väike umbes 3-protsendine lisakaristus. See näib olevat ka juhtum, kui AVX2 kasutatakse tema võrdlusalustes, nii et karistuse see osa võib olla 2104 töötab 3,2 GHz (mitte-AVX Turbo), 2,8 GHz (AVX2) ja 2,4 GHz täitmisel AVX-512. AVX2 kasutamise asemel on 12,5-protsendiline sagedus ja AVX-512-le viivitamise eest 25-protsendiline karistus.



Kuid üks AVX-512 probleemidest ja põhjus, miks see võib jõudlust kahjustada, on see, et AVX-512 kergekäeline kasutamine pole tegelikult hea mõte. Kui osa protsessori aktiveerimiseks peate võtma 25-protsendilise sageduse löögi, on viimane asi, mida kunagi soovite, tabada seda plokki kergelt, kuid järjekindlalt, kutsudes seda käputäie soodsate kasutusviiside jaoks, mis aeglustavad protsessorit nii palju, neto üldine jõudlus on madalam, kui see oleks olnud AVX2 puhul või isegi ilma AVX-iga, sõltuvalt stsenaariumist.

Torvalds sukeldub mõned spetsiifilised tehnilised probleemid, mis muudavad AVX-512 kehva valiku, sealhulgas „juhusliku kasutamise” juhtum, milleks AVX-512 sobib väga halvasti. Teised niidis nagu David Kanter vaidlustavad idee, et AVX-512 on räni vähene kasutamine, viidates sellele, et juhised sobivad väga hästi tehisintellekti ja HPC rakenduste jaoks. Killustatuse probleem on aga see, mis kellelegi ei meeldi.

Nõustun kogu südamest, et killustatus on AVX-512-le haiget teinud. Kuna selle rakendamiseks vajalik ruum on üsna suur, pole põhimõtteliselt põhjust seda kunagi lisada väiksematele protsessori südamikele nagu Atom, mis ei toeta veel AVX / AVX2. Mis puudutab konkreetset kasutamist väljaspool AI / ML / HPC rakendusi, siis peame ootama, kuni Intel selle funktsiooni tarbijaprotsessoritele reaalselt edastab.

Copyright © Kõik Õigused Kaitstud | 2007es.com