CUDA цөм ба тензор цөм хоёрын ялгаа юу вэ? (Тайлбарласан) – Бүх ялгаа

 CUDA цөм ба тензор цөм хоёрын ялгаа юу вэ? (Тайлбарласан) – Бүх ялгаа

Mary Davis

CUDA болон Tensor цөмүүд нь Nvidia хэмээх компанийн бүтээсэн бүтээгдэхүүн юм. Тэгэхээр CUDA цөм ба тензор цөм гэж юу вэ? CUDA гэдэг нь Compute Unified Device Architecture гэсэн үгийн товчлол юм. Nvidia хөгжүүлэгчдийн хэлснээр CUDA цөм нь таны GPU, ухаалаг утас, тэр ч байтугай таны машинд байдаг.

CUDA цөм нь ерөнхий зориулалтын боловсруулалтад тусгай төрлийн график боловсруулах нэгжийг (GPU) ашиглах боломжийг програм хангамжид олгодог зэрэгцээ тооцоолох платформ ба хэрэглээний програмчлалын интерфейс (API) юм.

Харин Nvidia-ийн бүтээсэн тензор цөмийг GPU-д бас ашигладаг. Тензор цөмүүд нь холимог нарийвчлалтай тооцоолох боломжийг идэвхжүүлж, нарийвчлалыг хадгалахын зэрэгцээ дамжуулах чадварыг нэмэгдүүлэхийн тулд тооцооллыг динамикаар тохируулдаг.

Энгийн үгээр хэлбэл, эдгээр цөм нь тодорхой тооцоолол хийхэд таны компьютерийн GPU-н чухал хэсэг юм. CUDA цөм нь хоёр тоог үржүүлж, өөр тоонд нэмэхэд ашиглагддаг.

Тензор цөм нь ижил боловч 4×4 матрицтай. Эдгээр тооцоолол нь үндсэндээ графикийг танд илүү хурдан гаргаж өгдөг.

CUDA гэж юу вэ?

Тооцоолох нэгдсэн төхөөрөмжийн архитектур нь 2007 оны 6-р сарын 23-нд гарсан Nvidia-аас боловсруулсан CUDA нь товчоор хэлбэл зэрэгцээ тооцоолох платформ ба хэрэглээний програмчлалын интерфейс (API) юм.

Энэ нь програм хангамжид ерөнхий зориулалтын боловсруулалтад тусгай төрлийн график боловсруулах нэгжийг (GPU) ашиглах боломжийг олгодог бөгөөд энэ аргыг ерөнхий зориулалтын тооцоолол гэж нэрлэдэг.GPU (GPU).

CUDA нь GPU-ийн виртуал зааврын багц болон тооцоолох цөмүүдийг гүйцэтгэх зэрэгцээ тооцоолох элементүүдэд шууд хандах боломжийг олгодог програм хангамжийн давхарга юм. CUDA нь C, C++, Fortran зэрэг өөр өөр програмчлалын хэлтэй ажиллахаар бүтээгдсэн.

Өөр өөр програмчлалын хэлтэй ажиллах чадвар нь зэрэгцээ програмчлалын мэргэжилтнүүдэд GPU нөөцийг ашиглахад хялбар болгодог бөгөөд хэрэв бид үүнийг Direct3D эсвэл OpenGL гэх мэт өмнөх API-уудаас ялгаж үзвэл илүү дэвшилтэт програмчлалын программчлал шаарддаг. график програмчлалын ур чадварын суурь.

CUDA-тай GPU нь OpenMP, OpenACC, OpenCL, мөн HIP зэрэг програмчлалын хүрээг дэмждэг бөгөөд эдгээр кодыг CUDA-д хөрвүүлэх боломжтой. CUDA-д ашигласан анхны нэр нь Compute Unified Device Architecture гэсэн үгийн товчлол байв. Гэсэн хэдий ч Nvidia дараа нь түгээмэл хэрэглэгддэг товчлолыг орхисон.

Хүчтэй Nvidia график карт GTX 1080 Ti

CUDA-ийн тухай дэлгэрэнгүй

Мэргэшсэн компьютерийн процессорын хувьд график боловсруулах нэгж (GPU) нь бодит хэрэгцээг хангадаг. -цаг хугацаа, тооцоолол их шаарддаг 3D графикийн ажлын ачаалал.

2012 оны тухайд GPU-ууд хөгжиж, том блокуудад өгөгдөл боловсруулах үр дүнтэй, параллель олон цөмт систем болсон.

Өгөгдлийн асар том блокуудыг зэрэгцүүлэн боловсруулах үед энэ загвар нь алгоритмуудын ерөнхий зориулалтын төв боловсруулах нэгжээс (CPU) илүү давуу талтай.

  • криптограф хэшфункцууд
  • машин сурах
  • молекулын динамик симуляци
  • физик хөдөлгүүр
  • эрэмбэлэх алгоритмууд

CUDA архитектурын одоо хэрэглээ болон Ирээдүйд

  • 3D график дүрслэлийг хурдасгах
  • Видео файлын форматыг харилцан хөрвүүлэх хурдасгах
  • Шифрлэлт, шифрлэлт, шахалтыг хурдасгах
  • Био мэдээлэл зүй, жишээ нь, NGS ДНХ-ийн дараалал BarraCUDA
  • Уургийн үндсэн хэлбэрийг урьдчилан таамаглах зэрэг тархсан тооцоолол
  • Эмнэлгийн шинжилгээний симуляци, жишээлбэл, CT болон MRI скан зураг дээр суурилсан виртуал бодит байдал
  • Физик симуляци, ялангуяа шингэний динамикийн хувьд
  • Мэдрэлийн сүлжээний машин сургалтын асуудлуудын сургалт
  • Нүүр таних
  • Тусгайлсан тооцооллын төслүүд, тухайлбал [имэйлээр хамгаалагдсан] болон бусад төслүүд. BOINC
  • Молекулын динамик
  • Уул уурхайн криптовалют
  • Хөдөлгөөний бүтэц (SfM) програм хангамж

Тензорын цөм гэж юу вэ?

Тензор цөм гэж нэрлэгддэг тусгай цөмүүд нь холимог нарийвчлалтай сургалт явуулах боломжийг олгодог. Эдгээр тусгай цөмүүдийн эхний үе нь үүнийг нэгтгэсэн үржүүлэх-нэмэх алгоритмаар гүйцэтгэдэг. Энэ нь 4 x 4 FP16 эсвэл FP32 матрицад хоёр 4 x 4 FP16 матрицыг үржүүлж нэмэх боломжтой болгодог.

Эцсийн үр дүн нь бага зэрэг алдагдах FP32 байх болно, холимог нарийвчлалтай тооцооллыг ийм гэж тодорхойлсон хэдий чоролтын матрицууд нь бага нарийвчлалтай FP16 байж болно.

Практикт энэ нь тооцооллыг ихээхэн хурдасгаж, загварын эцсийн үр дүнд бага нөлөө үзүүлдэг. Энэ чадавхи нь хожмын бичил архитектуруудаар өргөжин тэлж, компьютерийн тоог бүр ч бага нарийвчлалтай дүрслэх боломжтой болсон.

Эхний үеийг V100-аас эхлэн Volta микроархитектурыг нэвтрүүлсэн бөгөөд үе ирэх бүр шинэ GPU бичил архитектурын тусламжтайгаар тооцоолоход илүү олон компьютерийн дугаарын нарийвчлалтай форматуудыг ашиглах боломжтой болгосон.

Бид дараагийн хэсэгт микроархитектур үүсгэх бүрээр Tensor Cores-ийн хүчин чадал, үйл ажиллагаа хэрхэн өөрчлөгдөж, сайжирсан талаар ярих болно.

Титан V-ийн бүтээсэн график дүрслэл

Тензорын цөм хэрхэн ажилладаг вэ?

Эхний үе:

Volta GPU бичил архитектур нь Tensor Cores-ийн эхний үеийнхэнд багтсан. Эдгээр цөм нь холимог нарийвчлалтай, FP16 тооны форматаар сургах боломжтой болсон.

Энэ нь тодорхой GPU-ийн teraFLOP дамжуулах чадварыг 12 дахин нэмэгдүүлэх боломжтой. Дээд зэрэглэлийн V100-ийн 640 цөм нь өмнөх үеийн Паскал график процессортой харьцуулахад гүйцэтгэлийн хурдыг 5 дахин нэмэгдүүлэх боломжийг олгодог.

Хоёр дахь үе:

Тюринг GPU-г нэвтрүүлснээр хоёр дахь үеийн Tensor Cores-ийг нэвтрүүлсэн. Int8, Int4, Int1 нь дэмжигдсэн Tensor Core нарийвчлалын жагсаалтад нэмэгдсэн.өмнө нь FP16-аар хязгаарлагдаж байсан.

Мөн_үзнэ үү: Орой ба шөнийн хоёрын ялгаа юу вэ? (Гүн шумбах) - Бүх ялгаа

Холимог нарийвчлалтай сургалтын журмын улмаас GPU-ийн гүйцэтгэлийн хүчин чадал Паскал GPU-тай харьцуулахад 32 дахин нэмэгдсэн.

Гурав дахь үе:

Ампер график процессорын архитектур нь FP64, TF32, bfloat16 нарийвчлалын дэмжлэгийг нэмснээр Вольта болон Тюринг бичил архитектурын өмнөх дэвшилтүүдийг өргөжүүлдэг.

Гүнзгий суралцах сургалт, дүгнэлт хийх үйл ажиллагаа нь эдгээр нэмэлт нарийвчлалтай форматаар илүү хурдасдаг. Жишээлбэл, TF32 формат нь FP32-тэй адил ажилладаг бөгөөд ямар ч кодыг өөрчлөхгүйгээр 20 дахин хурдасгах боломжийг олгодог.

Дараа нь хэдхэн мөр кодын тусламжтайгаар холимог нарийвчлалыг автоматаар хэрэгжүүлснээр сургалтыг нэмэлт 2 дахин хурдасгах болно.

Гайхалтай хурдан олон GPU харилцан үйлчлэлийг идэвхжүүлэх гурав дахь үеийн NVLink, гурав дахь үеийн Ray Tracing цөм, сийрэг матрицын математик бүхий мэргэшсэн байдал нь Амперын бичил архитектурын нэмэлт талууд юм .

Дөрөв дэх үе:

Хопперын бичил архитектурт суурилсан дөрөв дэх үеийн Tensor Cores-ийг ирээдүйд гаргахаар төлөвлөж байна. Дараагийн H100-ийн дөрөв дэх үеийн Tensor Cores.

2022 оны 3-р сард гарах төлөвтэй байгаа нь FP8-ийн нарийвчлалтай форматыг зохицуулах чадвартай бөгөөд NVIDIA-ын хэлснээр асар том хэлний загваруудыг "гайхалтай 30X хурдасгах болно" өмнөх үеийнхээс.”

RTX график карт ньЭнэ нь тензор цөм агуулсан тул графикийг маш хурдан гаргахад ашигладаг.

CUDA цөм ба тензор цөм хоёрын ялгаа

Тензор цөм нь одоогоор Titan V болон Tesla V100-ээр хязгаарлагдаж байна. Хоёр GPU дээрх 5120 CUDA цөм нь GPU цаг тутамд (жишээ нь, Tesla V100 PCIe давтамж 1.38 Гц) нэг нарийвчлалтай үржүүлэх-хуримтлуулах үйл ажиллагааны дээд хүчин чадалтай (жишээлбэл, fp32: x += y * z).

Тензор цөм бүр жижиг матрицын хувьд 4×4 жижиг матрицууд дээр ажилладаг. Нэг GPU цаг тутамд тензор цөм бүр нэг матрицыг үржүүлэх-хуримтлуулах үйлдлийг гүйцэтгэх боломжтой.

Энэ нь хоёр 4×4 FP16 матрицыг үржүүлж, 4×4 FP32 матрицыг нэмснээр аккумлятор (энэ нь бас fp32 4×4 матриц) үүсдэг.

Оролтын матрицууд нь fp16, харин үржүүлэх үр дүн болон аккумлятор нь fp32 байдаг тул алгоритмыг холимог нарийвчлал гэж нэрлэдэг.

Зөв нэр томъёо нь ердөө л "4×4 матриц цөм" байж магадгүй ч NVIDIA маркетингийн баг "тензор цөм"-ийг ашиглахаар сонгосон.

Мөн_үзнэ үү: Тогоруунууд ба харцага ба өрөвтаснууд (Харьцуулалт) – Бүх ялгаа

Тензорын цөмийн товч тайлбар

GPU карт CUDA цөм VRAM
GeForce GTX 1660 Ti 1536 6ГБ
GeForce GTX 1660 Super 1408 6ГБ
GeForce GTX 1660 1408 6ГБ
GeForce GTX 1650 Super 1408 4ГБ
GeForce GTX 1650 1024 ба896 4ГБ
GeForce GTX 1060 3ГБ 1280 4ГБ
GeForce GTX 1650 1280 3ГБ
GeForce GTX 1060 6ГБ 768 6ГБ
GeForce GTX 1050 Ti (3ГБ) 768 4ГБ
GeForce GTX 1050 (2ГБ) 640 3ГБ
GeForce GTX 960 1024 2ГБ
GeForce GTX 950 786 2ГБ
GeForce GTX 780 Ti 2880 2ГБ
GeForce GTX 780 2304 3ГБ
GeForce GTX 750 Ti 640 2 ГБ
GeForce GTX 750 512 1ГБ эсвэл 2 ГБ

CUDA цөм агуулсан GPU

Дүгнэлт

  • CUDA болон Tensor цөмүүд нь Nvidia хэмээх компанийн бүтээсэн бүтээгдэхүүн юм. CUDA гэдэг нь Compute Unified Device Architecture гэсэн үгийн товчлол юм. Эдгээр CUDA цөм нь таны GPU, ухаалаг утас, тэр ч байтугай таны машинд байдаг.
  • Харин Nvidia-ийн бүтээсэн тензор цөмийг GPU-д бас ашигладаг. "Тензор цөм" гэж нэрлэгддэг тусгай цөм нь холимог нарийвчлалтай сургалт явуулах боломжийг олгодог. Эхний үеийн Tensor Cores нь холимог нарийвчлалтай, FP16 тооны форматаар сургах боломжтой болсон.
  • Энэ нь тодорхой GPU-ийн teraFLOP дамжуулах чадварыг 12 дахин нэмэгдүүлэх боломжтой. Int8, Int4, Int1 нь дэмжигдсэн Tensor Core нарийвчлалын жагсаалтад нэмэгдсэн.
  • Холимог учраасНарийвчилсан сургалтын журмын дагуу GPU-ийн гүйцэтгэл 32 дахин нэмэгдсэн. Hopper бичил архитектурт суурилсан дөрөв дэх үеийн Tensor Cores-ийг ирээдүйд гаргахаар төлөвлөж байна.

Бусад нийтлэл

    Mary Davis

    Мэри Дэвис бол янз бүрийн сэдвээр харьцуулсан дүн шинжилгээ хийх чиглэлээр мэргэшсэн зохиолч, контент бүтээгч, шулуухан судлаач юм. Сэтгүүлзүйн чиглэлээр суралцаж төгссөн, энэ салбарт тав гаруй жил ажилласан туршлагатай Мэри уншигчдадаа шударга, шууд мэдээлэл хүргэх хүсэл эрмэлзэлтэй нэгэн. Түүний зохиол бичих дуртай залуу байхаас нь эхэлсэн бөгөөд зохиол бичих амжилтынх нь гол түлхэц болсон юм. Мэригийн судалгаа хийж, олдворуудыг ойлгоход хялбар, анхаарал татахуйц хэлбэрээр танилцуулах чадвар нь түүнийг дэлхийн өнцөг булан бүрээс уншигчдын хайрыг татсан юм. Мэри бичихгүй байхдаа аялах, ном унших, гэр бүл, найз нөхөдтэйгээ цагийг өнгөрөөх дуртай.