Cili është ndryshimi midis bërthamave CUDA dhe bërthamave tensor? (Shpjeguar) - Të gjitha ndryshimet

 Cili është ndryshimi midis bërthamave CUDA dhe bërthamave tensor? (Shpjeguar) - Të gjitha ndryshimet

Mary Davis

Bërthamat CUDA dhe Tensor janë produkte të zhvilluara nga një kompani e quajtur Nvidia. Pra, çfarë janë bërthamat CUDA dhe bërthamat Tensor? CUDA qëndron për Compute Unified Device Architecture. Bërthamat CUDA janë të pranishme në GPU-të, telefonat inteligjentë dhe madje edhe në makinat tuaja, siç thonë zhvilluesit e Nvidia.

Bërthamat CUDA janë një platformë kompjuterike paralele dhe ndërfaqe programimi aplikacioni (API) që i mundëson softuerit të përdorë lloje specifike të njësive të përpunimit grafik (GPU) për përpunim me qëllime të përgjithshme.

Ndërsa bërthamat tensore të cilat janë zhvilluar gjithashtu nga Nvidia, përdoren gjithashtu në GPU. Bërthamat tensor mundësojnë llogaritjen me precizion të përzier, duke përshtatur llogaritjet në mënyrë dinamike për të rritur xhiron duke ruajtur saktësinë.

Me fjalë të thjeshta, këto bërthama janë një pjesë e rëndësishme e GPU-ve në kompjuterin tuaj për të bërë llogaritje të caktuara. Bërthamat CUDA përdoren për të shumëzuar dy numra dhe për t'i shtuar ato në një numër tjetër.

Shiko gjithashtu: Shenja e dorës "Të dua" VS Shenja "Bri i Djallit" - Të gjitha Dallimet

Ndërsa thelbi tensor është i njëjtë, por me matrica 4×4. Këto llogaritje në thelb po i japin grafikat më shpejt për ju.

Çfarë është CUDA?

Compute Unified Device Architecture shkurtimisht CUDA e zhvilluar nga Nvidia, lëshuar më 23 qershor 2007, është një platformë kompjuterike paralele dhe ndërfaqe programimi aplikacioni (API).

Kjo i mundëson softuerit të përdorë lloje specifike të njësive të përpunimit grafik (GPU) për përpunim për qëllime të përgjithshme, një metodë e njohur si llogaritje me qëllim të përgjithshëm nëGPU (GPU).

CUDA është një shtresë softuerësh që ofron qasje të drejtpërdrejtë në grupin e instruksioneve virtuale të GPU-së dhe elementët paralelë llogaritës për ekzekutimin e bërthamave llogaritëse. CUDA u zhvillua për të punuar me gjuhë të ndryshme programimi duke përfshirë C, C++ dhe Fortran.

Aftësia për të punuar me gjuhë të ndryshme programimi e bën më të lehtë për specialistët e programimit paralel që të përdorin burimet GPU nëse e dallojmë atë nga API-të e mëparshme si Direct3D ose OpenGL, të cilat do t'ju kërkonin të keni një më të avancuar baza e aftësive në programimin grafik.

GPU me CUDA gjithashtu mbështet kornizat e programimit, si OpenMP, OpenACC, OpenCL, dhe gjithashtu HIP që mund të përpilojë një kod të tillë në CUDA. Emri i parë i përdorur për CUDA ishte një akronim për arkitekturën e pajisjes kompjuterike të unifikuar. Sidoqoftë, Nvidia më vonë hoqi akronimin e përdorur zakonisht.

Një kartë grafike e fuqishme Nvidia GTX 1080 Ti

Më shumë rreth CUDA

Si një procesor i specializuar kompjuterik, njësia e përpunimit grafik (GPU) plotëson nevojat e real -Ngarkesa të punës grafike 3D me kohë, llogaritje intensive.

Rreth 2012 GPU-të evoluan dhe ishin bërë sisteme shumë-bërthamore shumë paralele që mundësonin përpunim efektiv të të dhënave për blloqe të mëdha.

Kur përpunohen paralelisht blloqe të mëdha të dhënash, ky dizajn është superior ndaj njësive të përpunimit qendror me qëllime të përgjithshme (CPU) për algoritme, si p.sh.:

  • hash kriptografikfunksionet
  • mësimi i makinës
  • simulimet e dinamikës molekulare
  • motorët e fizikës
  • algoritmet e renditjes

Përdorimet e Arkitekturës CUDA Tani dhe në të ardhmen

  • Përkthimi i përshpejtuar i grafikës 3D
  • Ndërkonvertimi i përshpejtuar i formateve të skedarëve video
  • Kriptimi, deshifrimi dhe kompresimi i përshpejtuar
  • Bioinformatika, p.sh., NGS sekuenca e ADN-së BarraCUDA
  • Llogaritjet e shpërndara, të tilla si parashikimi i konformacionit vendas të proteinave
  • Simulimet e analizës mjekësore, për shembull, realiteti virtual bazuar në imazhet e skanimit CT dhe MRI
  • Simulimet fizike, veçanërisht në dinamikën e lëngjeve
  • Trajnimi i rrjetit nervor në problemet e mësimit të makinerisë
  • Njohja e fytyrës
  • Projektet e shpërndara kompjuterike, si [email protected] dhe projekte të tjera duke përdorur BOINC
  • Dinamika molekulare
  • Mihja e kriptomonedhave
  • Struktura nga softueri i lëvizjes (SfM)

Çfarë është një bërthamë tensore?

Bërthamat e specializuara të quajtura Tensor Cores lejojnë trajnime me precizion të përzier. Gjenerimi fillestar i këtyre bërthamave të specializuara e bën këtë me një algoritëm të shkrirë shumëfishimi. Kjo bën të mundur shumëzimin dhe shtimin e dy matricave 4 x 4 FP16 në një matricë 4 x 4 FP16 ose FP32.

Rezultati përfundimtar do të jetë FP32 me vetëm një humbje të lehtë të saktësisë, llogaritja me saktësi të përzier është caktuar si e tillë edhe psematricat hyrëse mund të jenë me saktësi të ulët FP16.

Në praktikë, kjo përshpejton ndjeshëm llogaritjet me pak ndikim në efektivitetin përfundimtar të modelit. Ky kapacitet është zgjeruar nga mikroarkitekturat e mëvonshme në paraqitje edhe më pak të sakta të numrave kompjuterikë.

Gjenerata e parë u prezantua me mikroarkitekturën Volta duke filluar nga V100, më shumë formate të saktësisë së numrave të kompjuterit u vunë në dispozicion për llogaritje me mikroarkitekturat e reja GPU me çdo gjeneratë që kalon.

Ne do të flasim për mënyrën se si kapaciteti dhe funksionaliteti i Tensor Cores kanë ndryshuar dhe përmirësuar me çdo gjenerim të mikroarkitekturës në seksionin që vijon.

Një imazh i përkthyer grafikisht i bërë nga një Titan V

Si funksionojnë bërthamat tensor?

Gjenerata e parë:

Mikroarkitektura e GPU-së Volta u përfshi me gjeneratën e parë të bërthamave tensor. Këto bërthama bënë të mundur stërvitjen me saktësi të përzier dhe formatin e numrave FP16.

Kjo mund të ketë deri në një rritje 12x të xhiros teraFLOP për GPU të caktuara. 640 bërthamat e nivelit të lartë V100 japin deri në një rritje 5x të shpejtësisë së performancës në krahasim me GPU-të Pascal të gjeneratës së mëparshme.

Gjenerata e dytë:

Me prezantimin e GPU-ve Turing, u prezantua gjenerata e dytë e Bërthamave Tensor. Int8, Int4 dhe Int1 u shtuan në listën e precizimeve të mbështetura Tensor Core, të cilat ishinkufizuar më parë në FP16.

Për shkak të procedurave të përziera të trajnimit me saktësi, xhiroja e performancës së GPU-së u rrit deri në 32 herë në krahasim me GPU-të Pascal.

Gjenerata e tretë:

Arkitektura në një GPU Ampere zgjerohet në përparimet e mëparshme të mikroarkitekturave Volta dhe Turing duke shtuar mbështetje për saktësitë FP64, TF32 dhe bfloat16.

Shiko gjithashtu: Dallimet midis një manga dhe një romani të lehtë - të gjitha ndryshimet

Trajnimi i të mësuarit të thellë dhe aktivitetet e konkluzionit përshpejtohen shumë më tepër nga këto formate me saktësi shtesë. Për shembull, formati TF32 funksionon në mënyrë të ngjashme me FP32 ndërsa garanton gjithashtu shpejtësi deri në 20 herë pa ndryshuar asnjë kod.

Më pas, me vetëm disa rreshta kodi, zbatimi automatik i saktësisë së përzier do të përshpejtojë trajnimin me 2 herë shtesë.

NVLink i gjeneratës së tretë për të mundësuar ndërveprime jashtëzakonisht të shpejta me shumë GPU, bërthamat Ray Tracing të gjeneratës së tretë dhe specializimi me matematikë të rrallë të matricës janë aspekte shtesë të mikroarkitekturës Ampere .

Gjenerata e katërt:

Është planifikuar një lëshim i ardhshëm i gjeneratës së katërt të mikroarkitekturës Hopper të Tensor Cores. Brezi i katërt Tensor Cores në H100-ën e ardhshme.

i cili pritet të dalë në mars 2022, do të jetë në gjendje të trajtojë formatet e saktësisë FP8 dhe, sipas NVIDIA, do të përshpejtojë modelet e mëdha gjuhësore "me një 30X mahnitës mbi gjeneratën e mëparshme.”

Një kartë grafike RTX ështëpërdoret për paraqitjen e grafikës shumë shpejt pasi përmban bërthama tensore.

Dallimi ndërmjet bërthamave CUDA dhe bërthamave tensor

Bërthamat tensor aktualisht janë të kufizuara në Titan V dhe Tesla V100. 5120 bërthamat CUDA në të dy GPU-të kanë një kapacitet maksimal prej një operacioni të vetëm të grumbullimit të shumëfishimit me saktësi (për shembull, në fp32: x += y * z) për orë GPU (p.sh. frekuenca e Tesla V100 PCIe është 1,38 Gz).

Çdo bërthamë tensori operon në matrica të vogla 4×4 për matrica të vogla. Për një orë GPU, çdo bërthamë tensori mund të kryejë një operacion të grumbullimit të shumëfishimit të matricës.

Shumizon dy matrica 4×4 FP16 dhe shton matricën 4×4 FP32 që rezulton në akumuluesin (që është gjithashtu një matricë fp32 4×4).

Për shkak se matricat hyrëse janë fp16 ndërsa rezultatet e shumëzimit dhe akumuluesi janë fp32, algoritmi njihet si saktësi e përzier.

Termi i saktë ka të ngjarë të jetë vetëm "bërthama matricë 4×4", por ekipi i marketingut NVIDIA zgjodhi të përdorë "bërthamat tensor".

Shpjegimi i plotë i bërthamave tensor me pak fjalë

Kartë GPU Bërthamat CUDA 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 dhe896 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 GB
GeForce GTX 750 512 1 GB ose 2 GB

GPU-të që përmbajnë bërthama CUDA

Përfundim

  • Bërthamat CUDA dhe Tensor janë produkte, të dyja të zhvilluara nga një kompani e quajtur Nvidia. CUDA qëndron për Compute Unified Device Architecture. Këto bërthama CUDA janë të pranishme në GPU-të, telefonat inteligjentë dhe madje edhe në makinat tuaja.
  • Ndërsa bërthamat tensore, të cilat janë zhvilluar gjithashtu nga Nvidia, përdoren gjithashtu në GPU. Bërthamat e specializuara të quajtura "Bërthamat Tensor" lejojnë trajnime me precizion të përzier. Gjenerata e parë e Tensor Cores bëri të mundur stërvitjen me saktësi të përzier dhe formatin e numrave FP16.
  • Kjo mund të ketë deri në një rritje deri në 12x të xhiros teraFLOP për GPU të caktuara. Int8, Int4 dhe Int1 u shtuan në listën e precizimeve të mbështetura të Tensor Core.
  • Për shkak të përzierprocedurat e trajnimit me saktësi, performanca e GPU-së u rrit deri në 32 herë. Është planifikuar një lëshim i ardhshëm i gjeneratës së katërt të mikroarkitekturës Hopper të Tensor Cores.

Artikuj të tjerë

    Mary Davis

    Mary Davis është një shkrimtare, krijuese e përmbajtjes dhe studiuese e zjarrtë e specializuar në analizën e krahasimit për tema të ndryshme. Me një diplomë në gazetari dhe mbi pesë vjet përvojë në këtë fushë, Mary ka një pasion për të ofruar informacion të paanshëm dhe të drejtpërdrejtë për lexuesit e saj. Dashuria e saj për të shkruar filloi që kur ishte e re dhe ka qenë një forcë shtytëse e karrierës së saj të suksesshme në shkrim. Aftësia e Marisë për të hulumtuar dhe paraqitur gjetjet në një format të lehtë për t'u kuptuar dhe tërheqës e ka bërë atë të dashur për lexuesit në të gjithë botën. Kur nuk shkruan, Marisë i pëlqen të udhëtojë, të lexojë dhe të kalojë kohë me familjen dhe miqtë.