Mikä on AVX-512 ja miksi Intel tappaa sen?

Mikä on AVX-512 ja miksi Intel tappaa sen?

Laitteesi suoritin suorittaa miljoonia laskutoimituksia sekunnissa ja on vastuussa tietokoneesi toiminnasta. CPU:n kanssa työskentelee ALU (Aritmetic Processing Unit), joka vastaa matemaattisista tehtävistä ja jota ohjataan suorittimen mikrokoodilla.





Tämä suorittimen mikrokoodi ei ole staattinen ja sitä voidaan parantaa, ja yksi tällainen parannus oli Intelin AVX-512-käskysarja. Intel aikoo kuitenkin tappaa AVX-512:n ja poistaa sen toiminnot suorittimistaan ​​lopullisesti. Mutta miksi? Miksi Intel tuhoaa AVX-512:n?





PÄIVÄN VIDEON TEKEMINEN

Kuinka ALU toimii?

Ennen kuin tutustut AVX-512-ohjesarjaan, on tärkeää ymmärtää, miten ALU toimii.





Kuten nimestä voi päätellä, aritmeettista käsittelyyksikköä käytetään matemaattisten tehtävien suorittamiseen. Nämä tehtävät sisältävät operaatioita, kuten yhteen-, kerto- ja liukulukulaskutoimituksia. Näiden tehtävien suorittamiseksi ALU käyttää sovelluskohtaista digitaalista piiriä, jota ohjaa CPU:n kellosignaali.

Siksi CPU:n kellonopeus määrittää nopeuden, jolla käskyt käsitellään ALU:ssa. Joten jos suorittimesi toimii 5 GHz:n kellotaajuudella, ALU pystyy käsittelemään 5 miljardia käskyä yhdessä sekunnissa. Tästä syystä suorittimen suorituskyky paranee kellonopeuden kasvaessa.



  Piirisarjat emolevyllä

Se sanoi, kun suorittimen kellonopeus kasvaa, prosessorin tuottaman lämmön määrä kasvaa. Tästä syystä tehokäyttäjät käyttävät nestemäistä typpeä ylikellottaessaan järjestelmiään. Valitettavasti tämä lämpötilan nousu korkeilla taajuuksilla estää prosessorivalmistajia nostamasta kellotaajuutta tietyn kynnyksen yli.

Joten miten uuden sukupolven prosessori tarjoaa paremman suorituskyvyn vanhoihin iteraatioihin verrattuna? No, suorittimen valmistajat käyttävät rinnakkaisuuden käsitettä suorituskyvyn parantamiseen. Tämä rinnakkaisuus voidaan saavuttaa käyttämällä moniytimistä arkkitehtuuria, jossa käytetään useita eri prosessointiytimiä prosessorin laskentatehon parantamiseksi.





Toinen tapa parantaa suorituskykyä on käyttää SIMD-käskysarjaa. Yksinkertaisesti sanottuna Single Instruction Multiple Data -käsky mahdollistaa ALU:n suorittamisen saman käskyn eri datapisteissä. Tämän tyyppinen rinnakkaisuus parantaa suorittimen suorituskykyä, ja AVX-512 on SIMD-käsky, jota käytetään tehostamaan suorittimen suorituskykyä suoritettaessa tiettyjä tehtäviä.

Miten tiedot saavuttavat ALU:n?

Nyt kun meillä on perusymmärrys ALU:n toiminnasta, meidän on ymmärrettävä, kuinka tiedot saavuttavat ALU:n.





  kovalevy tyhjällä taustalla

ALU:n saavuttamiseksi tietojen on kuljetettava eri tallennusjärjestelmien läpi. Tämä datamatka perustuu laskentajärjestelmän muistihierarkiaan. Alla on lyhyt katsaus tähän hierarkiaan:

kuinka asentaa ubuntu virtualboxiin
  • Toissijainen muisti: Tietokonelaitteen toissijainen muisti koostuu pysyvästä tallennuslaitteesta. Tämä laite voi tallentaa tietoja pysyvästi, mutta se ei ole yhtä nopea kuin CPU. Tästä johtuen CPU ei voi käyttää tietoja suoraan toissijaisesta tallennusjärjestelmästä.
  • Ensisijainen muisti: Ensisijainen tallennusjärjestelmä koostuu hajasaantimuistista (RAM). Tämä tallennusjärjestelmä on nopeampi kuin toissijainen tallennusjärjestelmä, mutta se ei voi tallentaa tietoja pysyvästi. Siksi, kun avaat tiedoston järjestelmässäsi, se siirtyy kiintolevyltä RAM-muistiin. Edes RAM ei kuitenkaan ole tarpeeksi nopea suorittimelle.
  • Välimuisti: Välimuisti on upotettu suorittimeen ja on tietokoneen nopein muistijärjestelmä. Tämä muistijärjestelmä on jaettu kolmeen osaan, nimittäin L1-, L2- ja L3-välimuisti . Kaikki tiedot, jotka ALU:n on käsiteltävä, siirtyvät kiintolevyltä RAM-muistiin ja sitten välimuistiin. ALU ei kuitenkaan voi käyttää tietoja suoraan välimuistista.
  • CPU-rekisterit: Tietojenkäsittelylaitteen CPU-rekisteri on kooltaan hyvin pieni, ja tietokonearkkitehtuuriin perustuen näihin rekistereihin mahtuu 32 tai 64 bittiä tietoa. Kun tiedot siirtyvät näihin rekistereihin, ALU voi käyttää niitä ja suorittaa käsillä olevan tehtävän.

Mikä on AVX-512 ja miten se toimii?

AVX 512 -käskysarja on AVX:n toinen iteraatio, ja se saapui Intel-prosessoreihin vuonna 2013. Lyhennettynä Advanced Vector Extensionsista, AVX-käskysarja esiteltiin ensin Intelin Xeon Phi (Knights Landing) -arkkitehtuurissa ja pääsi myöhemmin Intelin palvelimelle. prosessorit Skylake-X-suorittimissa.

Lisäksi AVX-512-käskysarja pääsi kuluttajapohjaisiin järjestelmiin Cannon Lake -arkkitehtuurilla, ja myöhemmin Ice Lake- ja Tiger Lake -arkkitehtuurit tukivat sitä.

Tämän ohjesarjan päätavoitteena oli nopeuttaa tietojen pakkausta, kuvankäsittelyä ja kryptografisia laskelmia sisältäviä tehtäviä. AVX-512-käskysarja tarjoaa kaksinkertaisen laskentatehon vanhoihin iteraatioihin verrattuna, ja se tarjoaa huomattavia suorituskyvyn lisäyksiä.

Joten miten Intel kaksinkertaisti suorittimiensa suorituskyvyn AVX-512-arkkitehtuuria käyttämällä?

No, kuten aiemmin selitettiin, ALU voi käyttää vain CPU:n rekisterissä olevia tietoja. Advanced Vector Extensions -käskysarja kasvattaa näiden rekistereiden kokoa.

Tämän koon kasvun ansiosta ALU voi käsitellä useita datapisteitä yhdessä käskyssä, mikä lisää järjestelmän suorituskykyä.

Rekisterin koon suhteen AVX-512-käskysarja tarjoaa kolmekymmentäkaksi 512-bittistä rekisteriä, mikä on kaksinkertainen verrattuna vanhempaan AVX-käskyjoukkoon.

Miksi Intel lopettaa AVX-512:n?

Kuten aiemmin selitettiin, AVX-512-käskysarja tarjoaa useita laskennallisia etuja. Itse asiassa suositut kirjastot, kuten TensorFlow, käyttävät ohjejoukkoa tarjotakseen nopeampia laskelmia käskyjoukkoa tukevissa prosessoreissa.

Joten miksi Intel poistaa AVX-512:n käytöstä viimeaikaisissa Alder Lake -prosessoreissaan?

No, Alder Lake -prosessorit ovat toisin kuin Intelin valmistamat vanhemmat. Vanhemmissa järjestelmissä käytettiin ytimiä, jotka toimivat samalla arkkitehtuurilla, kun taas Alder Lake -prosessorit käyttävät kahta eri ydintä. Nämä Alder Lake -suorittimien ytimet tunnetaan nimellä P- ja E-ytimet ja niitä käyttävät eri arkkitehtuurit.

P-ytimet käyttävät Golden Cove -mikroarkkitehtuuria, kun taas E-ytimet käyttävät Gracemont-mikroarkkitehtuuria. Tämä ero arkkitehtuurissa estää ajastinta toimimasta oikein, kun tietyt käskyt voivat toimia yhdessä arkkitehtuurissa, mutta eivät toisessa.

Alder Lake -prosessorien tapauksessa AVX-512-käskysarja on yksi tällainen esimerkki, koska P-ytimillä on laitteisto käskyjen käsittelemiseksi, mutta E-ytimillä ei.

Tästä syystä Alder Lake -suorittimet eivät tue AVX-512-käskysarjaa.

AVX-512-ohjeet voivat kuitenkin toimia tietyissä Alder Lake -suorittimissa, joissa Intel ei ole fyysisesti yhdistänyt niitä. Käyttäjien on poistettava E-ytimet käytöstä BIOSin aikana.

Tarvitaanko AVX-512:ta kuluttajapiirisarjoihin?

AVX-512-käskysarja kasvattaa suorittimen rekisterin kokoa parantaakseen sen suorituskykyä. Tämän suorituskyvyn lisäyksen ansiosta prosessorit voivat murskata numeroita nopeammin, jolloin käyttäjät voivat suorittaa videon/äänen pakkausalgoritmeja nopeammin.

Tämä suorituskyvyn lisäys voidaan kuitenkin havaita vain, kun ohjelmassa määritetty käsky on optimoitu toimimaan AVX-512-käskysarjassa.

Tästä syystä ohjejoukkoarkkitehtuurit, kuten AVX-512, sopivat paremmin palvelinten työkuormille, ja kuluttajatason piirisarjat voivat toimia ilman monimutkaisia ​​käskysarjoja, kuten AVX-512.