2024-10-04
한어한어Русский языкРусский языкEnglishEnglishFrançaisFrançaisIndonesianSanskritIndonesian日本語SanskritDeutsch日本語PortuguêsDeutschΕλληνικάPortuguêsespañolΕλληνικάItalianoespañolSuomalainenItalianoLatinaSuomalainenLatina
yhteenveto
3 miljardin parametrin llm:llä tutkimusprototyyppien päättelylaite, jossa on 16 ibm aiu northpole -suoritinta, tarjosi valtavan 28 356 tunnuksen sekunnissa järjestelmäläpäisykyvyn ja alle 1 ms/token (käyttäjää kohti) latenssin verrattuna 16:een. jokainen northpole-kortti kuluttaa vain 672 w kompakti 2u-muotokerroin. keskittyen alhaiseen latenssiin ja korkeaan energiatehokkuuteen, northpolea (12 nm) verrataan gpu-sarjaan (7/5/4 nm) eri virrankulutuksilla.alimmalla gpu-viiveellä northpole tarjoaa 72,7 parempia energiatehokkuusmittauksia (token/s/w) samalla kun se tarjoaa paremman viiveen.
esitellä
suuret kielimallit (llm) ovat saavuttaneet merkittäviä suorituskyvyn vertailuarvoja erilaisissa tekoälytehtävissä, kuten ohjelmoinnin avustamisessa antamalla koodiehdotuksia, suoriutuessaan hyvin standardoiduissa testeissä ja auttaneet artikkeleiden, blogien, kuvien ja videoiden sisällön luomisessa.
llm:ien laajamittaisessa käyttöönotossa, erityisesti tekoälyn laajamittaisessa käyttöönotossa, syntyy kaksi pääasiallista ja ristiriitaista haastetta, nimittäin energiankulutus ja vasteviive.
ensinnäkin, koska llm vaatii huomattavia energiaresursseja sekä koulutukseen että päättelyyn, tarvitaan kestävä tulevaisuuden laskentainfrastruktuuri, jotta se voidaan ottaa käyttöön tehokkaasti ja laajasti. kun palvelinkeskusten hiilijalanjäljet laajenevat ja niistä tulee yhä enemmän energiarajoitteita, datakeskusten energiatehokkuudesta tulee entistä tärkeämpää. maailman talousfoorumin raportin mukaan:
"palvelukeskusten ympäristöhiilijalanjälki jakautuu tällä hetkellä pääosin kahteen osaan: koulutuksen osuus on 20 % ja päättelyn 80 %. tekoälymallien kehittyessä eri aloilla päättelyn kysyntä ja sen ympäristöjalanjälki kasvavat. "
toiseksi, monet sovellukset, kuten interaktiiviset keskustelut ja itsenäiset työnkulut, vaativat erittäin alhaisen viiveen. tietyssä laskenta-arkkitehtuurissa latenssia voidaan vähentää vähentämällä suorituskykyä, mutta tämä johtaa alentuneeseen energiatehokkuuteen. klassisen järjestelmän maksiimin parafraasin mukaan:
"läpivirtausongelma voidaan ratkaista rahalla, mutta viiveongelma on monimutkaisempi, koska valon nopeus on kiinteä (parafrasoidaan [10], korvaa "kaistanleveyden" sanalla "läpäisykyky".)
gpu:t voivat saavuttaa pienemmän latenssin käyttämällä pienempiä eräkokoja, mutta suorituskyvyn ja energiatehokkuuden kustannuksella. lisäksi gpu-jako vähentää latenssia käyttämällä tietojen rinnakkaisuutta useiden gpu:iden välillä, mutta jälleen energiatehokkuuden kustannuksella. jakaminen tai ei, gpu:t näyttävät saavuttavan kovan rajan pienemmällä viiveellä. gpu:n kompromissi energiatehokkuuden ja latenssin välillä on esitetty kuvassa 1.
kuva 1: northpolen (12 nm) suorituskyky suhteessa nykyaikaisiin gpu:ihin (7/5/4 nm) energia- ja järjestelmän latenssimittareissa, jossa järjestelmän latenssi on kunkin käyttäjän kokema kokonaisviive. alimmalla gpu-viiveellä (h100, piste p2) northpole tarjoaa 72,7 kertaa paremmat energiatehokkuusmittaukset (tokens/sekunti/w). parhaalla gpu-energiatehokkuusindeksillä (l4, piste p1) northpole tarjoaa 46,9 kertaa pienemmän latenssin.
siksi tässä artikkelissa tutkittu keskeinen tutkimuskysymys on kuinka saavuttaa samanaikaisesti kaksi ristiriitaista tavoitetta, matala latenssi ja korkea energiatehokkuus.
northpole on päättelykiihdyttimen sirujen ja ohjelmistojen ekosysteemi, joka on suunniteltu ensimmäisistä periaatteista lähtien ja joka tuottaa ylivertaisen tehokkuuden hermoverkkojen päättelyyn. vaikka northpolea ei ole suunniteltu erityisesti llm:lle, tämä artikkeli yllättäen osoittaa, että uusi northpole-arkkitehtuuri voi saavuttaa alhaisen latenssin, energiatehokkaan llm-päätelmän (kuva 1, kuva 2 ja taulukko 1).
taulukko i: suorituskykymittaukset
northpole- ja gpu-järjestelmien mitattu suorituskyky korttikohtaisesti. jokaiselle mittarille # tarkoittaa pienempi on parempi, kun taas " suurempi on parempi. northpole 16-kortin laitteissa virrankulutus mitataan korttia kohden ja järjestelmän kokonaiskapasiteetti jaetaan 16 kortilla. northpole-viive kaikissa 16 kortissa mittausta varten. p1 , p2, p3 ja p4 viittaavat kuvassa 1 ja kuvassa 2 merkittyihin pisteisiin, jotka osoittavat korkeimman gpu-energiatehokkuusindeksin, pienimmän gpu-viiveen, suurimman gpu-tilaindeksin ja pienimmän energiatehokkuuden gpu-viiveen.
tämän artikkelin tärkeimmät tutkimustulokset ovat seuraavat:
suurelle kielimallille (llm), jonka parametrikoko on 3 miljardia ja jonka mallirakenne on johdettu ibm granite-8b-code-base -mallista ja joka on yhdenmukainen llama 3 8b:n ja mistral 7b:n [14] kanssa, tämä artikkeli osoittaa konfiguraatio tutki prototyyppien päättelylaite 16 northpole-prosessorilla.
absoluuttisen suorituskyvyn osalta laite tarjoaa 28 356 merkkiä/s järjestelmän suorituskyvyn ja alle 1 millisekunnin yhden käyttäjän latenssin, samalla kun se kuluttaa 672 wattia tehoa 16 northpole-kortissa 2u-mallissa.
suhteellisen suorituskyvyn suhteen, kun verrataan 12 nm:n pohjoisnapaa useisiin gpu-sarjaan (7/5/5/4 nm a100/l4/l40s/h100) eri virrankulutuksilla, se näkyy kuvasta 2(a) ja kuten voi. näkyy kuvassa 2(c): alimmalla gpu-viiveellä (piste p2) northpole tarjoaa 72,7 kertaa paremmat energiatehokkuusmittarit (tokenit / sekunti / w) ja 15,9 kertaa paremmat tilamittaukset (tokenit / sekunti / transistori), kun taas latenssi on edelleen alle 2,5 kertaa parhaalla gpu:n energiatehokkuusindikaattorilla (piste p1), northpole tarjoaa 46,9 kertaa pienemmän viiveen ja 2,1 kertaa paremman tilailmaisimen, mutta tarjoaa silti 2,2 kertaa paremman gpu-tilamittarin (); kohta p3), northpole tarjoaa 20,3 kertaa pienemmän latenssin ja 5,3 kertaa paremman energiatehokkuusmittarin, mutta tarjoaa silti 1,4 kertaa paremmat avaruusmittarit.
erityisesti, kun verrataan 12 nm:n pohjoisnapaa 5 nm:n l4-grafiikkasuorittimeen vertailukelpoisen virrankulutuksen saamiseksi, kuvasta 2(e) voidaan nähdä, että suurimmalla l4-suorituskyvyllä (alle 50 ms per merkki, piste p1) tunti,northpole tarjoaa 46,9 kertaa pienemmän latenssin ja parantaa suorituskykyä 1,3 kertaa ja alimmalla l4-viiveellä (piste p4) northpole tarjoaa 36,0 kertaa suuremman suorituskyvyn (tokeneita/sekunti/kortti) ja parantaa viivettä, joka on edelleen alle 5,1-kertainen.
kuva 2: (a)–(d) -paneelit näyttävät 12 nm:n pohjoisnapan suorituskyvyn suhteessa nykyaikaisiin gpu:ihin (7/5/4 nm) energiatehokkuuden, tilan ja järjestelmän latenssimittareiden osalta, missä järjestelmän latenssi on per käyttäjän kokema kokonaisviive.
paneeli (a) on sama kuin kuva 1, lisättynä pisteen p3 merkinnällä. paneeleissa (a) ja (c) käytetään yhtä gpu:ta, kun taas paneelit (b) ja (d) käyttävät sirpalointitekniikkaa, joka voi vähentää latenssia, mutta vain energian ja tilan tehokkuuden kustannuksella. alimmalla grafiikkasuorittimen latenssilla (h100, piste p2) northpole tarjoaa 72,7 kertaa paremmat energiatehokkuusmittarit (tunnisteita/sekunti/w) ja 15,9 kertaa paremmat tilamittaukset (tunnisteita/sekunti/transistori) samalla kun latenssi on alhainen yli 2,5 kertaa; parhaalla gpu-energiatehokkuusindeksillä (l4, piste p1) northpole tarjoaa 46,9 kertaa pienemmän viiveen ja 2,1 kertaa paremman tilaindeksin, mutta tarjoaa silti 2,2 kertaa paremman energiatehokkuusindeksin parhaimmillaan. kohta p3), northpole tarjoaa 20,3 kertaa pienemmän latenssin ja 5,3 kertaa paremman energiatehokkuusmittarin, mutta tarjoaa silti 1,4 kertaa paremmat tilamittaukset.
paneeli (e) näyttää 12 nm:n pohjoisnavan suorituskyvyn suhteessa 5 nm:n l4-grafiikkasuorittimeen suorituskyvyn (tokenia/sekunti/kortti) ja järjestelmän latenssimittareiden suhteen. alimmalla l4-viiveellä (piste p4) northpole tarjoaa 36,0 kertaa suuremman suorituskyvyn korkeimmalla l4-suorituskyvyllä (alle 50 millisekuntia per merkki, piste p1), northpole tarjoaa 46,9 kertaa pienemmän latenssin. kunkin energiatehokkuusmittarin laskemiseen käytetty grafiikkasuorittimen virrankulutus on esitetty taulukossa i. koska eri erikokoisten todellisen tehonkulutuksen mittaamiseen ei ole saatavilla instrumentteja, samaa tehoa käytetään kaikissa eräkokoissa, mikä saattaa aliarvioida energiatehokkuusmittarin, mutta laadulliset tulokset pitävät silti paikkansa.
northpolen arkkitehtuuri
kuten kuvasta 3 näkyy, northpole-prosessori on valmistettu 12 nanometrin prosessitekniikalla, siinä on 22 miljardia transistoria ja sen pinta-ala on 795 neliömillimetriä. sen arkkitehtuuri on aivojen inspiroima, optimoitu piille ja johdettu kymmenestä toisiaan täydentävästä suunnitteluaksioomasta, jotka kattavat laskennan, tallennuksen, viestinnän ja ohjauksen, mikä mahdollistaa northpolen huomattavasti muita arkkitehtuureja parempia suorituksia tavallisissa tekoälyn päättelytehtävissä.se toimii hyvin jopa verrattuna prosessoreihin, jotka on valmistettu edistyneemmillä prosessitekniikoilla.
katso pohjoisnapa-arkkitehtuurin yksityiskohtaiset aksioomit [11], [12]. yksinkertaisesti sanottuna northpole järjestää 256 modulaarista ydintä 16 × 16 kaksiulotteiseen taulukkoon. jokainen ydin sisältää vektorimatriisikertoimen (vmm), joka suorittaa 2048, 4096 ja 8192 operaatiota jaksoa kohden int8-, int4- ja int2-tarkkuudella. ydinlaskenta sisältää myös 4-suuntaisen, 32-lohkoisen fp16-vektoriyksikön ja 32-lohkon aktivointitoimintoyksikön. ydinryhmässä on yhteensä 192 mt sram-muistia, ja jokaisessa ytimessä on 0,75 mt sram-muistia. sirumuisti on tiiviisti kytketty laskentayksikköön ja ohjauslogiikkaan, ja ydinmuistin ja tietojenkäsittelyn välinen kokonaiskaistanleveys on 13 tb/s. lisäksi jokaisessa ytimessä on 4096 johtoa, jotka risteävät vaaka- ja pystysuunnassa parametrien, ohjeiden, aktivointiarvojen ja osittaisten summien välittämiseksi neljän erillisen verkon kautta sirulla (noc).pysähtymisen estämiseksi on-chip-kehyspuskuri on varustettu 32 mt:lla sram-muistia, joka erottaa syöttö- ja lähtödatan sirun ulkopuolisen tiedonsiirron ydintaulukon sirun sisäisestä laskennasta.
kuva 3: northpole-prosessori: pii (vasemmalla), muotti (keskellä), pakattu moduuli (oikea).
laitteet
northpole on tehnyt prototyypin pcie gen3 × 8 -kortilla, joka näkyy kuvassa 4, ja 16 korttia on asennettu valmiiseen 2u-palvelimeen muodostamaan tutkimuksen prototyypin päättelylaitteen, kuten kuvassa 5. palvelimessa on kaksi intel xeon gold 6438m -suoritinta, joissa kummassakin on 32 ydintä ja 60 megatavua välimuistia 2,2 ghz:n kellotaajuudella. järjestelmässä on myös 512 gt 4800 mhz ddr5-muistia. jokaiseen palvelinprosessoriin on kytketty kaksi pcie gen5 × 16 -väylää, jotka tarjoavat yhteensä 256 gt/s pcie-kaistanleveyttä (kaksisuuntainen). nämä neljä väylää on laajennettu järjestelmän 16 pcie-paikkaan pcie-siltojen kautta, ja jokaiseen paikkaan on asennettu northpole-kortti. nämä 16 northpole-korttia käyttävät jopa puolet käytettävissä olevasta 256 gt/s pcie-kaistanleveydestä.
kuva 4: northpole pcie -kortti.
kuva 5: räjäytyskuva tutkimusprototyyppilaitteesta, jossa näkyy 16 northpole pcie -kortin asennus. northpole-kortit voivat kommunikoida isännän kanssa tavallisen pcie-päätepistemallin kautta tai suoraan ja tehokkaammin toistensa kanssa kunkin kortin lisälaitteiden avulla.
järjestelmässä on red hat enterprise 8.9, ja northpole käyttää sisäänrakennettua vfio-ytimen ajuria, jotta käyttäjätilaohjelmisto voi hallita laitteistoa. järjestelmä käyttää iommu:ta osoitteenkäännösten hallintaan ja mahdollistaa tietoturvaominaisuudet, kuten laitteen eristyksen ja virtualisoinnin, virtuaalikone- tai konttiteknologiaa käyttävien sovellusten ajamiseen.
jokainen northpole-kortti vastaanottaa ja lähettää tietoja dma-moottorin kautta, joka sijaitsee kullakin kortilla. nämä dma-moottorit toimivat itsenäisesti ja voivat samanaikaisesti vastaanottaa ja lähettää tensoreita useilla tavoilla. ensimmäinen menetelmä on standardi pcie-päätepistemalli, jossa isäntäohjelma lukee syötteen isäntämuistista dma-moottorin kautta ja kirjoittaa tensorit takaisin isäntämuistiin laskennan jälkeen. toinen lähestymistapa hyödyntää laitteiston lisäominaisuuksia jokaisessa kortissa, jotta northpole-kortit voivat kommunikoida suoraan toistensa kanssa pcie:n kautta ilman siirtoja isäntämuistin välillä tai lisäohjelmiston hallintaa ajon aikana. suoran pohjoisnapojen välisen tiedonsiirron ansiosta suuremmat mallit voivat kattaa useita northpole-siruja samalla, kun ne vähentävät viestintäviivettä ja puhtaasti ohjelmistonhallintajärjestelmän aiheuttamaa ylikuormitusta.
llm:ien kartoitus northpole-laitteisiin
kuvassa 6 esitetty llm-kartoitusstrategia on saanut vaikutteita kolmesta keskeisestä havainnosta. ensinnäkin riittävän suurilla malleilla koko muuntajakerros mahtuu kokonaan yhden northpole-sirun ("w4a4") muistiin painojen, aktivointien ja kv-puskureiden avulla int4-muodossa, kun taas lähtökerros mahtuu kahdelle sirulle. toiseksi, jos paino- ja kv-välimuistit sijaitsevat kokonaan sirulla, suoritusajan tarvitsee siirtää vain pieniä upotettuja tensoreita kerrosten välillä, mikä on pcie gen3 × 8:n kaistanleveyden sisällä. kolmanneksi northpole-laitteiden prototyyppi voidaan koota helposti asentamalla 16 northpole pcie -korttia valmiiseen palvelimeen.
tämä ehdottaa strategiaa, jossa kukin muuntajakerros kartoitetaan vastaavaan northpole-korttiinsa käyttämällä gpipe-tyylistä putkilinjan rinnakkaisuutta ja jaetaan lähtökerros kahdelle northpole-kortille käyttäen tensoririnnakkaisisuutta pcie gen3 × 8:n kautta, ja se lähettää upotustensorin kerrosten välillä.päättelyn aikana pieni erä käyttäjäpyyntöjä (esim. n pyyntöä) jaetaan m yhtä suureen mikroerään ja liukuhihnana 16 northpole-kortin läpi.
vaikka putkilinjan rinnakkaisuutta on hyödynnetty llm:iden koulutuksessa (ilman latenssirajoituksia), sen käyttöä päätelmissä on rajoittanut eräkoko, joka tarvitaan lyhentämään kunkin liukuhihnavaiheen tai liukuhihnakuplien joutoaikaa. esimerkiksi joissakin tutkimuksissa on havaittu, että tehokas koulutus edellyttää, että mikroerien m määrä on noin neljä kertaa liukuhihnavaiheiden lukumäärä. minierän kokoa n rajoittaa (a) järjestelmän vaatima merkkikohtainen latenssi ja (b) kv-välimuistin käytettävissä oleva muisti koko minierän tallentamista varten. pienen latenssin laskenta ja 13 tb/s sirun muistin kaistanleveys mahdollistavat northpolen äärimmäisen alhaisen tunnisteviiveen, joten n:ää valittaessa rajoittava tekijä on muisti, jota käytetään koko kv-välimuistin tallentamiseen sirulle. lisäksi havaitsemme, että liukuhihnan vaiheiden lukumäärää vastaava mikroerien m määrä on riittävä tekemään liukuhihnan tyhjäkäynnistä merkityksettömän.
tässä artikkelissa raportoiduissa kokeissa valitsimme minierän koon n = 28 jaettuna m = 14 yhtä suureen mikroerään, mikä johti mikroerän koon 2 kullekin northpole-kortin laskennalle. arkkitehtoniset suunnitteluvalinnamme tehokkaaseen laskentaan niin pienissä eräkokoissa ovat avainasemassa kuvassa 1 ja taulukossa i esitetyn tehokkuuden saavuttamisessa.
llm-malli ja koulutusmenetelmä
a
llm malli
järjestelmämme testaamiseen käytetty malli perustuu avoimen lähdekoodin ibm granite-8b-code-base -malliin, joka on 8 miljardin parametrin muuntaja-dekooderi, joka sisältää 36 muuntajakerrosta, joiden piilokerroskoko on 4096 ja ffn-välikerroskoko on 14 336, huomiopäiden määrä on 32, avainarvopäätä käyttävien ryhmäkyselyn huomiointia (gqa) käyttävien avainarvojen määrä on 8 ja sanaston koko on 49 152. yhdelle palvelimelle, jossa oli 16 northpole-korttia, käytimme mallin 3 miljardin parametrin versiota, jossa oli 14 muuntajakerrosta ja lähtökerrosta, kvantisoitu w4a4-tarkkuuteen, mutta muuten rakenne pysyi ennallaan.
erityisesti tämä mallikonfiguraatio vastaa llama 3 8b:tä [13] ja mistral 7b:tä [14] kerroskohtaisesti, ja ne eroavat vain kerrosten lukumäärän, mallisanaston koon ja käytetyn harjoitustiedon suhteen.
b
harjoittelu täydellä tarkkuudella
alkuperäisen mallin tehtävätarkkuuden palauttamiseksi kvantisoinnin jälkeen otettiin käyttöön seuraava menettely mallin painojen luomiseksi. ensinnäkin perusmalli opetetaan tyhjästä 1 biljoonaan kooditunnisteeseen 116 kielellä käyttäen täyttä fp16-tarkkuutta noudattaen [4]:n reseptiä. seuraavaksi perusmallin lähtökerrosten painot ja syötteet sekä silu-aktivaatiot kvantisoitiin int8, kun taas kaikki muut painot, lineaarisen kerroksen syötteet ja matriisin kertolaskutulot kvantisoitiin int4. lopuksi elpymisen jälkeinen kvantifiointitarkkuus kvantifioitiin suorittamalla kvantisointitietoinen koulutus 8,5 miljardille lisätunnisteelle harjoitustietojen python-kielen osajoukosta, oppimisnopeudella 8 × 10⁻⁵ ja eräkokolla 128 käyttämällä lsq-algoritmi. kvantisoijan aktivoivaa askelkokoa harjoitellaan lämpimällä käynnistyksellä, joka lisää oppimisnopeutta 200-kertaiseksi harjoituksen 250 ensimmäisen vaiheen aikana, mikä auttaa sopeutumaan nopeasti tietoihin.
grafiikkasuorittimella toimiva perusmalli fp16 ja northpolea käyttävä kvantisoitu malli saavuttivat pass@10-tarkkuuden humanevalsynthesize-pythonissa 0,01:n sisällä (0,3001 gpu vs. 0,2922 northpole. verrattavissa granite-8b-code-base-malliin. keskittyä laitteiston suorituskyvyn karakterisointiin sen sijaan, että työntäisi tehtävien tarkkuuden rajoja.
ajonaikainen sovellus
päättelyn aikana, kuten kuvassa 6, tunnisteet luodaan isäntäprosessorissa käynnissä olevalla pitkälle liukuhihnalla olevalla käyttäjäsovelluksella, joka esikäsittelee tekstin syöttötensoreiksi käyttämällä tokenisoreita ja upotuskerroksia ja sijoittaa syöttötensorit laitteen ensimmäiseen northpole-korttiin. , vastaanottaa tuloksena olevan lähtötensorin laitteen viimeiseltä northpole-kortilta, jälkikäsittelee lähtötensorin käyttämällä dekooderia ja detokenisoijaa ja silmukkaa tuloksena olevan tokenin seuraavana tulona. käyttäjäsovellus vastaa myös käyttöliittymästä sekä edistyneemmistä optimoinneista, kuten nopeasta esitäyttöstä.
siirtääkseen hermoverkon työkuorman northpoleen käyttäjäsovellus kutsuu käyttäjätilan ajonaikaista kirjastoa yksinkertaisella api:lla, määrittää northpole-kortin kerrosten painot ja kv-välimuistin alustuksen aikana ja lähettää ja vastaanottaa tulo- ja lähtötensoreita ajon aikana.painot ja kv-välimuisti on määritetty pysymään sirun muistissa, eikä niitä tarvitse suoratoistaa sirun ulkopuolella suorituksen aikana. ajonaikainen kirjasto hallitsee myös sirussa olevaa kehyspuskuria estääkseen northpole-ytimen pysähtymisen tulodatan tai lähtödatavastaanottimien puutteen vuoksi. välitensorit välitetään korttien välillä ilman isännän väliintuloa, kuten kohdassa 4 on kuvattu.
suorituskykytulokset
northpole 16-kortin laite saavutti 28 356 tokenia sekunnissa 3 miljardin parametrin llm:llä. tämän llm:n sekvenssin pituus on konfiguroitu 2048:ksi (1024 vihjeen pituus, 1024 merkkiä luotu), ja dekooderi käyttää ahneita näytteistyksiä.
grafiikkasuorittimiin verrattuna mittasimme yhden kortin suorituskyvyn kahdelle gpu:lle alhaisen tehon päättelyyn (l4 ja l40s) ja kahden gpu:n suorituskykyä korkean suorituskyvyn harjoitteluun (a100 ja h100).kaikki järjestelmät käyttävät samaa llm-mallia ja -kokoonpanoa, northpole toimii w4a4-tarkkuudella ja gpu toimii optimaalisella w4a16-tarkkuudella, koska tietojemme mukaan w4a4 cuda -ytimiä ei ole saatavilla.gpu-kokeissamme hyödynsimme gptq-kvantisointimallia ja vertasimme sitä vllm (versio 0.5.4) marlin-ytimen avulla vertailua varten northpoleen. gptq-kvantisoinnin käyttäminen tarjoaa optimaalisen mallin päättelyn suorituskyvyn gpu:ssa vähentämällä painon tarkkuutta ja säilyttäen samalla hyväksyttävän tarkkuuden. lisäksi marlin-ytimiä käytetään matriisioperaatioiden optimointiin, erityisesti kun käsitellään harvaa ja tiheää matriisikertoa. vllm-ajonaikaisen vertailun avulla voimme arvioida suorituskyvyn ja latenssin, mikä varmistaa mallin optimaalisen suorituskyvyn tietylle laitteistokokoonpanolle. kokeissa useilla gpu-korteilla käytettiin tensorin rinnakkaisuutta, joka on yhtä suuri kuin käytettävissä olevien korttien lukumäärä, jotta saavutettaisiin tehokkaasti pienin mahdollinen latenssi nvlinkissä. kokeilumme osoittavat, että vaikka sirpalointitekniikka vähentää latenssia, se johtaa grafiikkasuorittimen suorituskyvyn laskuun korttia kohden. on syytä huomata, että northpolen ylivoimainen suorituskyky johtuu pääasiassa sen valtavasta muistin kaistanleveydestä ja toissijaisesti sen alhaisemmasta tarkkuudesta.
taulukossa i esitetään northpole- ja gpu-järjestelmien mitatut suorituskykytulokset korttikohtaisesti. perusmittareita ovat suorituskyky-, latenssi-, tila- ja energiamittaukset, jotka on määritelty alla.
pienille syöttökehotteille luotujen merkkien kokonaismäärä on:
niiden joukossa mmm on mikroerien lukumäärä ja tok_seq_len on yksittäisen käyttäjän luomien lähtötunnisteiden lukumäärä. järjestelmän suoritusteho on syöttökehotteiden perusteella luotujen tunnusten kokonaismäärä (tokens gen) jaettuna kehotteen käsittelyyn tarvittavalla kokonaisajalla, mukaan lukien kehotteen esitäytön aika (kehoteaika) ja tunnuksen luomisaika (token gen time):
suorituskykyä verrataan korttikohtaisesti jakamalla järjestelmän suorituskyky järjestelmän käsittelykorttien lukumäärällä:
latenssi on keskimääräisen ajan mitta tietyn käyttäjän luomien lähtötunnisteiden välillä, ja se on sen ajan summa, joka kuluu upotetun tunnuksen virtaamiseen käsittelyprosessin läpi, sekä nopean esitäyttöajan, joka kuluu luotujen tunnuksien kokonaismäärästä:
samalla tavalla yhdistämällä yhtälöt 1, 2 ja 4:
jossa mini-erän koko = mini-erän koko huomaa, että tämä on kunkin käyttäjän näkemä järjestelmän latenssi.
normalisoituna järjestelmän korttien lukumäärällä, laajennamme [11]:ssä määriteltyjä tila- ja energiamittauksia, jotta voimme verrata järjestelmiä, joissa on eri määrä kortteja. tuloksena saadut tila- ja energiamittarit ovat korttikohtaista suorituskykyä, joka on normalisoitu prosessoritransistorien määrällä korttia kohden ja teholla korttia kohden:
jos järjestelmän suorituskyky skaalautuu suhteessa järjestelmän liukuhihnakorttien määrään, korttien normalisointi siirtyy, jolloin tila- ja energiamittarit pysyvät vakiona järjestelmän korttien määrän kanssa. tyypillisesti järjestelmän suoritusteho skaalautuu sublineaarisesti korttien lukumäärän kanssa tiedonsiirron ja synkronoinnin ylimääräisten kustannuksien vuoksi.
lopuksi
annamme seuraavat panokset:
esitimme doka northpole -laitteen tutkimusprototyypin.
osoitamme, että suuret neuroverkkomallit, kuten llm, voidaan jakaa tehokkaasti useiden northpole-prosessorien kesken, mikä laajentaa aikaisempaa työtämme, joka osoitti, että yksi northpole-prosessori toimii paremmin visuaalisissa päättelytehtävissä (resnet50, yolo-v4 ylittää muut arkkitehtuurit).
osoitamme, että northpolen ainutlaatuinen arkkitehtuuri sopii hyvin llm-päätelmään, mikä mahdollistaa sen huomattavasti paremman suorituskyvyn kuin reuna- ja datakeskuksen gpu:t, kun saavutetaan kaksi tavoitetta eli pieni latenssi ja korkea energiatehokkuus.
koska northpole-laitetta on käytettävä yksikkönä, se on tehokkain suuritehoisissa sovelluksissa.
tämä alustava paperi tarjoaa ponnahduslaudan energiatehokkuuden optimoinnin lisätutkimukselle, suurempien llm:ien kartoittamiseen vastaavasti suurempiin northpole-laitteisiin, uusiin northpole-arkkitehtuurin kanssa optimoituihin llm-malleihin sekä tuleviin järjestelmä- ja siruarkkitehtuureihin.