У чым розніца паміж ядрамі CUDA і тэнзарнымі ядрамі? (Тлумачэнне) – Усе адрозненні

 У чым розніца паміж ядрамі CUDA і тэнзарнымі ядрамі? (Тлумачэнне) – Усе адрозненні

Mary Davis

Ядры CUDA і Tensor - гэта прадукты, распрацаваныя кампаніяй пад назвай Nvidia. Такім чынам, што такое ядра CUDA і ядра Tensor? CUDA расшыфроўваецца як Compute Unified Device Architecture. Ядра CUDA прысутнічаюць у вашых графічных працэсарах, смартфонах і нават у вашых аўтамабілях, як кажуць распрацоўшчыкі Nvidia.

Ядра CUDA - гэта паралельная вылічальная платформа і інтэрфейс прыкладнога праграмавання (API), які дазваляе праграмнаму забеспячэнню выкарыстоўваць пэўныя тыпы графічных працэсараў (GPU) для апрацоўкі агульнага прызначэння.

У той час як тэнзарныя ядра, якія таксама былі распрацаваны Nvidia, таксама выкарыстоўваюцца ў графічных працэсарах. Tensor Cores забяспечваюць вылічэнні са змешанай дакладнасцю, дынамічна адаптуючы вылічэнні для павышэння прапускной здольнасці пры захаванні дакладнасці.

Простымі словамі, гэтыя ядра з'яўляюцца важнай часткай графічных працэсараў вашага кампутара для выканання пэўных вылічэнняў. Ядра CUDA выкарыстоўваюцца для множання двух лікаў і дадання іх да іншага ліку.

У той час як ядро ​​Tensor такое ж, але з матрыцамі 4×4. Гэтыя вылічэнні ў асноўным дазваляюць вам хутчэй афармляць графіку.

Што такое CUDA?

Compute Unified Device Architecture, скарочана CUDA, распрацаваная Nvidia, выпушчаная 23 чэрвеня 2007 г., уяўляе сабой паралельную вылічальную платформу і інтэрфейс прыкладнога праграмавання (API).

Гэта дазваляе праграмнаму забеспячэнню выкарыстоўваць пэўныя тыпы графічных працэсараў (GPU) для апрацоўкі агульнага прызначэння, метад, вядомы як вылічэнні агульнага прызначэння наГрафічныя працэсары (GPU).

CUDA - гэта праграмны ўзровень, які забяспечвае прамы доступ да віртуальнага набору інструкцый GPU і паралельных вылічальных элементаў для выканання вылічальных ядраў. CUDA была распрацавана для працы з рознымі мовамі праграмавання, уключаючы C, C++ і Fortran.

Магчымасць працаваць з рознымі мовамі праграмавання палягчае спецыялістам па паралельным праграмаванні выкарыстанне рэсурсаў графічнага працэсара, калі мы адрозніваем яго ад папярэдніх API, такіх як Direct3D або OpenGL, якія патрабуюць ад вас больш прасунутага база навыкаў у графічным праграмаванні.

GPU з CUDA таксама падтрымлівае структуры праграмавання, такія як OpenMP, OpenACC, OpenCL, а таксама HIP, які можа кампіляваць такі код у CUDA. Першая назва CUDA была абрэвіятурай Compute Unified Device Architecture. Аднак пазней Nvidia адмовілася ад звычайна выкарыстоўванай абрэвіятуры.

Магутная відэакарта Nvidia GTX 1080 Ti

Больш падрабязна пра CUDA

З'яўляючыся спецыялізаваным кампутарным працэсарам, графічны працэсар (GPU) задавальняе патрэбы рэальнага Працоўныя нагрузкі 3D-графікі з высокім узроўнем часу і інтэнсіўнымі вылічэннямі.

Прыкладна ў 2012 г. графічныя працэсары эвалюцыянавалі і сталі вельмі паралельнымі шмат'ядравымі сістэмамі, якія забяспечваюць эфектыўную апрацоўку даных для вялікіх блокаў.

Пры паралельнай апрацоўцы велізарных блокаў даных гэты дызайн пераўзыходзіць цэнтральныя працэсары агульнага прызначэння (ЦП) для такіх алгарытмаў, як:

  • крыптаграфічны хэшфункцыі
  • машыннае навучанне
  • мадэляванне малекулярнай дынамікі
  • фізічныя рухавікі
  • алгарытмы сартавання

Выкарыстанне архітэктуры CUDA цяпер і у будучыні

  • Паскораны рэндэрынг 3D-графікі
  • Паскоранае ўзаемапераўтварэнне фарматаў відэафайлаў
  • Паскоранае шыфраванне, дэшыфраванне і сцісканне
  • Біяінфарматыка, напрыклад, секвенирование ДНК NGS BarraCUDA
  • Размеркаваныя вылічэнні, такія як прагназаванне натыўнай канфармацыі бялкоў
  • Мадэляванне медыцынскага аналізу, напрыклад, віртуальная рэальнасць на аснове КТ і МРТ малюнкаў
  • Фізічнае мадэляванне, у прыватнасці, у дынаміцы вадкасці
  • Навучанне нейронных сетак праблемам машыннага навучання
  • Распазнаванне твараў
  • Праекты размеркаваных вылічэнняў, такія як [email protected] і іншыя праекты з выкарыстаннем BOINC
  • Малекулярная дынаміка
  • Здабыча крыптавалют
  • Праграмнае забеспячэнне Structure from motion (SfM)

Што такое Tensor Core?

Спецыялізаваныя ядры, якія называюцца тэнзарнымі ядрамі, дазваляюць трэніравацца са змешанай дакладнасцю. Першапачатковае пакаленне гэтых спецыялізаваных ядраў робіць гэта з дапамогай злітага алгарытму множання-дадання. Гэта дае магчымасць памнажаць і складаць дзве матрыцы 4 x 4 FP16 да матрыцы 4 x 4 FP16 або FP32.

Канчатковым вынікам будзе FP32 толькі з нязначнай стратай дакладнасці, вылічэнні са змешанай дакладнасцю пазначаюцца як такія, нават каліўваходныя матрыцы могуць быць нізкадакладнымі FP16.

На практыцы гэта істотна паскарае разлікі з невялікім уплывам на канчатковую эфектыўнасць мадэлі. Гэтая здольнасць была пашырана пазнейшымі мікраархітэктурамі да яшчэ менш дакладных камп'ютэрных лічбавых уяўленняў.

Першае пакаленне было прадстаўлена з мікраархітэктурай Volta, пачынаючы з V100, з кожным наступным пакаленнем для вылічэнняў з новымі мікраархітэктурамі графічных працэсараў стала даступна больш камп'ютэрных фарматаў дакладнасці лікаў.

У наступным раздзеле мы пагаворым пра тое, як ёмістасць і функцыянальнасць Tensor Cores змяняліся і паляпшаліся з кожным пакаленнем мікраархітэктуры.

Графічна адлюстраваны відарыс, зроблены Titan V

Як працуюць тэнзарныя ядры?

Першае пакаленне:

Мікраархітэктура Volta GPU была ўключана ў першае пакаленне тэнзарных ядраў. Гэтыя ядра дазволілі трэніравацца са змешанай дакладнасцю і ў фармаце лікаў FP16.

Глядзі_таксама: Розніца паміж Ігнараваць & Заблакіраваць у Snapchat – усе адрозненні

Гэта можа павялічыць прапускную здольнасць teraFLOP да 12 разоў для некаторых графічных працэсараў. 640 ядраў найвышэйшага ўзроўню V100 даюць да 5-кратнага павелічэння хуткасці ў параўнанні з графічнымі працэсарамі Pascal папярэдняга пакалення.

Другое пакаленне:

З увядзеннем графічных працэсараў Turing было прадстаўлена другое пакаленне тэнзарных ядраў. Int8, Int4 і Int1 былі дададзены ў спіс падтрымоўваных дакладнасцей Tensor Core, якія быліраней абмежаваны FP16.

Дзякуючы змешаным працэдурам навучання дакладнасці, прапускная здольнасць графічнага працэсара была павялічана да 32 разоў у параўнанні з графічнымі працэсарамі Pascal.

Трэцяе пакаленне:

Архітэктура графічнага працэсара Ampere пашырае ранейшыя дасягненні мікраархітэктур Volta і Turing, дадаючы падтрымку дакладнасці FP64, TF32 і bfloat16.

Глыбокае навучанне і дзейнасць па вываду паскараюцца дзякуючы гэтым дадатковым дакладным фарматам. Напрыклад, фармат TF32 функцыянуе аналагічна FP32, а таксама гарантуе паскарэнне да 20 разоў без змены кода.

Тады з дапамогай усяго некалькіх радкоў кода аўтаматычная рэалізацыя змешанай дакладнасці паскорыць навучанне яшчэ ў 2 разы.

Трэцяе пакаленне NVLink для надзвычай хуткага ўзаемадзеяння з некалькімі графічнымі працэсарамі, ядра трэцяга пакалення з трасіроўкай прамянёў і спецыялізацыя з матэматыкай разрэджаных матрыц з'яўляюцца дадатковымі аспектамі мікраархітэктуры Ampere .

Чацвёртае пакаленне:

Плануецца будучы выпуск чацвёртага пакалення Tensor Cores на аснове мікраархітэктуры Hopper. Тэнзорныя ядра чацвёртага пакалення ў наступным H100.

Глядзі_таксама: Розніца паміж VIX і VXX (тлумачэнне) – Усе адрозненні

Які будзе выпушчаны ў сакавіку 2022 года, змогуць працаваць з дакладнымі фарматамі FP8 і, паводле NVIDIA, паскараюць вялізныя моўныя мадэлі «ў дзіўныя 30 разоў у параўнанні з папярэднім пакаленнем.”

Відэакарта RTXвыкарыстоўваецца для вельмі хуткага рэндэрынгу графікі, паколькі змяшчае тэнзарныя ядра.

Розніца паміж ядрамі CUDA і тэнзарнымі ядрамі

Тэнзарныя ядра ў цяперашні час абмежаваныя Titan V і Tesla V100. Ядра 5120 CUDA на абодвух графічных працэсарах маюць максімальную магутнасць адной дакладнай аперацыі множання-назапашвання (напрыклад, у fp32: x += y * z) на такт GPU (напрыклад, частата Tesla V100 PCIe роўная 1,38 Гц).

Кожнае ядро ​​тэнзара працуе на малых матрыцах 4×4 для малых матрыц. За адзін такт GPU кожнае ядро ​​тэнзара можа выканаць адну аперацыю множання-назапашвання матрыцы.

Ён памнажае дзве матрыцы 4×4 FP16 і дадае матрыцу 4×4 FP32, у выніку якой атрымліваецца акумулятар (гэта таксама матрыца fp32 4×4).

Паколькі ўваходныя матрыцы маюць fp16, а вынікі множання і акумулятар - fp32, алгарытм вядомы як змешаная дакладнасць.

Правільным тэрмінам было б, хутчэй за ўсё, проста «матрычныя ядра 4×4», але маркетынгавая каманда NVIDIA вырашыла выкарыстоўваць «тэнзарныя ядра».

Короткае поўнае тлумачэнне ядраў Tensor

Карта GPU Ядра CUDA VRAM
GeForce GTX 1660 Ti 1536 6 ГБ
GeForce GTX 1660 Super 1408 6GB
GeForce GTX 1660 1408 6GB
GeForce GTX 1650 Super 1408 4GB
GeForce GTX 1650 1024 і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 2 ГБ
GeForce GTX 780 Ti 2880 2 ГБ
GeForce GTX 780 2304 3GB
GeForce GTX 750 Ti 640 2 ГБ
GeForce GTX 750 512 1 ГБ або 2 ГБ

Графічныя працэсары, якія змяшчаюць ядры CUDA

Выснова

  • Ядры CUDA і Tensor - гэта прадукты, абодва распрацаваныя кампаніяй пад назвай Nvidia. CUDA расшыфроўваецца як Compute Unified Device Architecture. Гэтыя ядра CUDA прысутнічаюць у вашых графічных працэсарах, смартфонах і нават аўтамабілях.
  • У той час як тэнзарныя ядра, якія таксама былі распрацаваны Nvidia, таксама выкарыстоўваюцца ў графічных працэсарах. Спецыялізаваныя ядры пад назвай "тэнзарныя ядры" дазваляюць трэніравацца са змешанай дакладнасцю. Першае пакаленне Tensor Cores дазволіла трэніравацца са змешанай дакладнасцю і фарматам лікаў FP16.
  • Гэта можа павялічыць прапускную здольнасць teraFLOP да 12 разоў для некаторых графічных працэсараў. Int8, Int4 і Int1 былі дададзены ў спіс падтрымоўваных дакладнасцей Tensor Core.
  • З-за змешанагапрацэдур навучання дакладнасці, прадукцыйнасць GPU была павялічана да 32 разоў. У будучыні плануецца выпуск чацвёртага пакалення Tensor Cores на аснове мікраархітэктуры Hopper.

Іншыя артыкулы

    Mary Davis

    Мэры Дэвіс - пісьменніца, стваральнік кантэнту і заўзяты даследчык, якая спецыялізуецца на параўнальным аналізе па розных тэмах. Са ступенню журналіста і больш чым пяцігадовым вопытам работы ў гэтай галіне, Мэры імкнецца даносіць аб'ектыўную і ясную інфармацыю сваім чытачам. Яе любоў да пісьменства пачалася ў маладосці і стала рухаючай сілай яе паспяховай пісьменніцкай кар'еры. Здольнасць Мэры даследаваць і прадстаўляць вынікі ў зручным для разумення і прывабным фармаце палюбіла яе чытачоў ва ўсім свеце. Калі яна не піша, Мэры любіць падарожнічаць, чытаць і праводзіць час з сям'ёй і сябрамі.