Mitä eroa on CUDA-ytimien ja Tensor-ytimien välillä? (Selitetty) - Kaikki erot

 Mitä eroa on CUDA-ytimien ja Tensor-ytimien välillä? (Selitetty) - Kaikki erot

Mary Davis

CUDA- ja Tensor-ytimet ovat Nvidia-nimisen yrityksen kehittämiä tuotteita. Mitä CUDA-ytimet ja Tensor-ytimet sitten ovat? CUDA on lyhenne sanoista Compute Unified Device Architecture (yhtenäinen laskentalaitearkkitehtuuri). CUDA-ytimiä on näytönohjaimissasi, älypuhelimissasi ja jopa autoissasi, kuten Nvidian kehittäjät sanovat.

CUDA-ytimet ovat rinnakkaislaskenta-alusta ja sovellusohjelmointirajapinta (API), jonka avulla ohjelmistot voivat käyttää tietyn tyyppisiä grafiikkasuorittimia (GPU) yleiskäyttöiseen käsittelyyn.

Nvidian kehittämiä tensorisydämiä käytetään myös näytönohjaimissa. Tensorisydämet mahdollistavat sekatarkkuuslaskennan, jossa laskutoimituksia mukautetaan dynaamisesti läpäisykyvyn lisäämiseksi ja tarkkuuden säilyttämiseksi.

Yksinkertaisesti sanottuna nämä ytimet ovat tärkeä osa tietokoneen näytönohjainta, joka tekee tiettyjä laskutoimituksia. CUDA-ytimiä käytetään kertomaan kaksi lukua ja lisäämään ne toiseen lukuun.

Katso myös: Blue and Black Steaks VS Blue Steaks Yhdysvalloissa - Kaikki erot

Tensor-ydin on sama, mutta 4×4-matriisien kanssa. Nämä laskutoimitukset periaatteessa renderöivät grafiikkaa nopeammin.

Mikä on CUDA?

Compute Unified Device Architecture, lyhyesti CUDA, jonka Nvidia on kehittänyt ja joka julkaistiin 23. kesäkuuta 2007, on rinnakkaislaskenta-alusta ja sovellusohjelmointirajapinta (API).

Tämä mahdollistaa sen, että ohjelmistot voivat käyttää tietyntyyppisiä grafiikkasuorittimia (GPU) yleiskäyttöiseen tietojenkäsittelyyn, mikä tunnetaan nimellä yleiskäyttöinen tietojenkäsittely GPU:lla (GPU).

CUDA on ohjelmistokerros, joka tarjoaa suoran pääsyn GPU:n virtuaaliseen käskykantaan ja rinnakkaisiin laskentaelementteihin laskentaytimien suorittamista varten. CUDA kehitettiin toimimaan eri ohjelmointikielten, kuten C:n, C++:n ja Fortranin kanssa.

Kyky työskennellä eri ohjelmointikielillä helpottaa rinnakkaisohjelmoinnin asiantuntijoiden GPU-resurssien hyödyntämistä, jos erotamme sen aiemmista API:ista, kuten Direct3D:stä tai OpenGL:stä, jotka vaativat kehittyneempää osaamista graafisessa ohjelmoinnissa.

CUDA:lla varustettu näytönohjain tukee myös ohjelmointikehyksiä, kuten OpenMP:tä, OpenACC:tä, OpenCL:ää ja myös HIP:tä, joka voi kääntää kyseisen koodin CUDA:ksi. CUDA:n ensimmäinen nimi oli lyhenne sanoista Compute Unified Device Architecture. Nvidia luopui kuitenkin myöhemmin yleisesti käytetystä lyhenteestä.

Tehokas Nvidian näytönohjain GTX 1080 Ti

Lisätietoja CUDA:sta

Erikoistunut tietokoneen prosessori, grafiikkasuorittin (GPU) vastaa reaaliaikaisten, laskentaintensiivisten 3D-grafiikkatehtävien tarpeisiin.

Noin vuonna 2012 GPU:t kehittyivät ja niistä oli tullut erittäin rinnakkaisia moniydinjärjestelmiä, jotka mahdollistavat tehokkaan tietojenkäsittelyn suurille lohkoille.

Kun suuria tietolohkoja käsitellään rinnakkain, tämä rakenne on parempi kuin yleiskäyttöiset keskusyksiköt (CPU) esimerkiksi seuraavissa algoritmeissa:

  • kryptografiset hash-funktiot
  • koneoppiminen
  • molekyylidynamiikkasimulaatiot
  • fysiikan moottorit
  • lajittelualgoritmit

CUDA-arkkitehtuurin käyttö nyt ja tulevaisuudessa

  • 3D-grafiikan nopeutettu renderöinti
  • Videotiedostomuotojen kiihdytetty muuntaminen keskenään
  • Nopeutettu salaus, salauksen purku ja pakkaus
  • Bioinformatiikka, esim. NGS DNA-sekvensointi BarraCUDA
  • Hajautetut laskutoimitukset, kuten proteiinien natiivikonformaation ennustaminen.
  • Lääketieteelliset analyysisimulaatiot, esimerkiksi virtuaalitodellisuus, joka perustuu tietokonetomografia- ja magneettikuvauksiin.
  • fysikaaliset simulaatiot, erityisesti nestedynamiikan alalla
  • Neuraaliverkon koulutus koneoppimisongelmissa
  • Kasvontunnistus
  • Hajautetun tietojenkäsittelyn hankkeet, kuten [email protected] ja muut BOINCia käyttävät hankkeet.
  • Molekyylidynamiikka
  • Kryptovaluuttojen louhinta
  • Structure from motion (SfM) -ohjelmisto

Mikä on Tensor Core?

Erikoistuneet ytimet, joita kutsutaan Tensor-ytimiksi, mahdollistavat sekatarkkuusharjoittelun. Näiden erikoistuneiden ytimien alkusukupolvi tekee tämän fuusioidulla kerto- ja yhteenlaskualgoritmilla. Tämä mahdollistaa kahden 4 x 4 FP16-matriisin kertomisen ja yhteenlaskun 4 x 4 FP16- tai FP32-matriisiksi.

Lopputulos on FP32, jossa tarkkuus heikkenee vain hieman, ja sekatarkkuuslaskenta on nimetty sellaiseksi, vaikka syöttömatriisit voivat olla matalan tarkkuuden FP16-matriiseja.

Käytännössä tämä nopeuttaa laskutoimituksia huomattavasti, mutta ei juurikaan vaikuta mallin lopulliseen tehokkuuteen. Myöhemmät mikroarkkitehtuurit ovat laajentaneet tätä kapasiteettia vielä epätarkempiin tietokonelukujen esitystapoihin.

Ensimmäinen sukupolvi esiteltiin Volta-mikroarkkitehtuurilla alkaen V100:sta, ja uusien GPU-mikroarkkitehtuurien avulla laskentaa varten saatiin käyttöön enemmän tietokoneen numerotarkkuusmuotoja jokaisen sukupolven myötä.

Seuraavassa osassa kerrotaan, miten Tensor Coresin kapasiteetti ja toiminnot ovat muuttuneet ja parantuneet jokaisen mikroarkkitehtuurisukupolven myötä.

Graafisesti renderöity kuva, joka on tehty Titan V:llä.

Miten sensoriytimet toimivat?

Ensimmäinen sukupolvi:

Volta GPU-mikroarkkitehtuuri sisältyi ensimmäisen sukupolven Tensor-ytimiin, jotka mahdollistivat harjoittelun sekatarkkuudella ja FP16-lukumuodossa.

Tämä voi lisätä teraFLOP-läpimenoa jopa 12-kertaisesti tietyillä näytönohjaimilla. 640 ytimen V100-huippumallin suorituskyky kasvaa jopa 5-kertaisesti edellisen sukupolven Pascal-näytönohjaimiin verrattuna.

Toinen sukupolvi:

Turing-grafiikkasuorittimien käyttöönoton myötä otettiin käyttöön toisen sukupolven Tensor-ytimet. Int8, Int4 ja Int1 lisättiin tuettujen Tensor-ytimien tarkkuusluetteloon, joka oli aiemmin rajoitettu FP16:een.

Sekatarkkuusharjoittelumenetelmien ansiosta GPU:n suorituskyky kasvoi jopa 32-kertaiseksi Pascal-grafiikkasuorittimiin verrattuna.

Kolmas sukupolvi:

Ampere-grafiikkasuorittimen arkkitehtuuri laajentaa Volta- ja Turing-mikroarkkitehtuurien aiempia edistysaskeleita lisäämällä tuen FP64-, TF32- ja bfloat16-tarkkuudelle.

Syväoppimisen harjoittelu ja päättelytoiminnot nopeutuvat huomattavasti näiden lisätarkkuusformaattien avulla. Esimerkiksi TF32-formaatti toimii samalla tavalla kuin FP32 ja takaa jopa 20-kertaisen nopeutumisen ilman koodin muuttamista.

Tämän jälkeen automaattinen sekatarkkuuden toteutus nopeuttaa harjoittelua vielä 2x muutamalla koodirivillä.

Kolmannen sukupolven NVLink, joka mahdollistaa huikean nopean usean grafiikkayksikön vuorovaikutuksen, kolmannen sukupolven Ray Tracing -ytimet ja erikoistuminen harvaan matriisimatematiikkaan ovat Ampere-mikroarkkitehtuurin lisäominaisuuksia. .

Neljäs sukupolvi:

Hopper-mikroarkkitehtuuriin perustuvien neljännen sukupolven Tensor-ytimien tuleva julkaisu on suunnitteilla. Neljännen sukupolven Tensor-ytimet seuraavassa H100:ssa.

jonka odotetaan ilmestyvän maaliskuussa 2022, pystyy käsittelemään FP8-tarkkuusmuotoja ja NVIDIAn mukaan se nopeuttaa valtavia kielimalleja "hämmästyttävän 30-kertaisesti edelliseen sukupolveen verrattuna".

RTX-näytönohjainta käytetään grafiikan renderöintiin erittäin nopeasti, sillä se sisältää tensorisydämiä.

CUDA-ytimien ja Tensor-ytimien välinen ero

Tensor-ytimet on tällä hetkellä rajoitettu Titan V:hen ja Tesla V100:een. Molempien näytönohjainten 5120 CUDA-ytimen maksimikapasiteetti on yksi yksitarkkuuden kertolasku- ja kasautumisoperaatio (esimerkiksi fp32:ssa: x += y * z) näytönohjaimen kelloa kohden (esim. Tesla V100 PCIe-taajuus on 1,38 Gz).

Katso myös: Mitä eroa on maagin, velhon ja velhon välillä? (Selitetty) - Kaikki erot

Kukin tensorisydän toimii 4×4 pienillä matriiseilla pieniä matriiseja varten. Yhtä GPU-kelloa kohden kukin tensorisydän voi suorittaa yhden matriisien kerrannais- ja kertolaskuoperaation.

Se kertoo kaksi 4×4 FP16-matriisia ja lisää 4×4 FP32-matriisin, joka on tuloksena akkumulaattorissa (joka on myös fp32 4×4-matriisi).

Koska syöttömatriisit ovat fp16 ja kertolaskun tulokset ja akkumulaattori ovat fp32, algoritmi tunnetaan sekatarkkuusalgoritmina.

Oikea termi olisi todennäköisesti vain "4×4 matriisiydintä", mutta NVIDIAn markkinointitiimi päätti käyttää termiä "tensorisydämet".

Tensorytimien täydellinen selitys pähkinänkuoressa

GPU-kortti CUDA-ytimet VRAM
GeForce GTX 1660 Ti 1536 6GB
GeForce GTX 1660 Super 1408 6GB
GeForce GTX 1660 1408 6GB
GeForce GTX 1650 Super 1408 4GB
GeForce GTX 1650 1024 ja 896 4GB
GeForce GTX 1060 3GB 1280 4GB
GeForce GTX 1650 1280 3GB
GeForce GTX 1060 6GB 768 6GB
GeForce GTX 1050 Ti (3GB) 768 4GB
GeForce GTX 1050 (2GB) 640 3GB
GeForce GTX 960 1024 2GB
GeForce GTX 950 786 2GB
GeForce GTX 780 Ti 2880 2GB
GeForce GTX 780 2304 3GB
GeForce GTX 750 Ti 640 2 GT
GeForce GTX 750 512 1 Gt tai 2 Gt

CUDA-ytimiä sisältävät näytönohjaimet

Päätelmä

  • CUDA ja Tensor-ytimet ovat Nvidia-nimisen yrityksen kehittämiä tuotteita. CUDA on lyhenne sanoista Compute Unified Device Architecture. CUDA-ytimiä on näytönohjaimissa, älypuhelimissa ja jopa autoissa.
  • Nvidian kehittämiä tensorisydämiä käytetään myös näytönohjaimissa. Erikoisytimet, joita kutsutaan nimellä "Tensorisydämet", mahdollistavat sekatarkkuusharjoittelun. Ensimmäisen sukupolven Tensorisydämet mahdollistivat harjoittelun sekatarkkuudella ja FP16-lukumuodossa.
  • Tämä voi lisätä teraFLOP-läpimenoa jopa 12-kertaisesti tietyillä näytönohjaimilla. Int8, Int4 ja Int1 lisättiin tuettujen Tensor Core -tarkkuuksien luetteloon.
  • Sekatarkkuuden harjoittelumenetelmien ansiosta GPU:n suorituskyky kasvoi jopa 32-kertaiseksi. Hopper-mikroarkkitehtuuriin perustuvan neljännen sukupolven Tensor-ytimien tuleva julkaisu on suunnitteilla.

Muut artikkelit

    Mary Davis

    Mary Davis on kirjailija, sisällöntuottaja ja innokas tutkija, joka on erikoistunut eri aiheiden vertailuanalyyseihin. Journalistitutkinnon ja yli viiden vuoden kokemuksen alalta Marylla on intohimo tarjota puolueetonta ja suoraviivaista tietoa lukijoilleen. Hänen rakkautensa kirjoittamiseen alkoi hänen nuorena ja on ollut hänen menestyksekkään kirjallisuuden uransa liikkeellepaneva voima. Maryn kyky tutkia ja esittää löydöksiä helposti ymmärrettävässä ja mukaansatempaavassa muodossa on tehnyt hänestä rakkautta lukijoille kaikkialla maailmassa. Kun hän ei kirjoita, Mary nauttii matkustamisesta, lukemisesta ja perheen ja ystävien kanssa viettämisestä.