ຄວາມແຕກຕ່າງລະຫວ່າງ CUDA Cores ແລະ Tensor Cores ແມ່ນຫຍັງ? (ອະທິບາຍ) – ຄວາມແຕກຕ່າງທັງໝົດ
ສາລະບານ
CUDA ແລະ Tensor cores ແມ່ນຜະລິດຕະພັນທີ່ພັດທະນາໂດຍບໍລິສັດທີ່ເອີ້ນວ່າ Nvidia. ດັ່ງນັ້ນ CUDA cores ແລະ Tensor cores ແມ່ນຫຍັງ? CUDA ຫຍໍ້ມາຈາກ Compute Unified Device Architecture. ຫຼັກ CUDA ແມ່ນມີຢູ່ໃນ GPUs ຂອງທ່ານ, ໂທລະສັບສະຫຼາດ, ແລະແມ້ກະທັ້ງລົດຂອງທ່ານ, ດັ່ງທີ່ນັກພັດທະນາ Nvidia ເວົ້າດັ່ງນັ້ນ.
CUDA cores ເປັນແພລະຕະຟອມຄອມພິວເຕີ້ຂະຫນານແລະການໂຕ້ຕອບການຂຽນໂປລແກລມແອັບພລິເຄຊັນ (API) ທີ່ຊ່ວຍໃຫ້ຊອບແວສາມາດນໍາໃຊ້ປະເພດສະເພາະຂອງຫນ່ວຍປະມວນຜົນກາຟິກ (GPUs) ສໍາລັບການປຸງແຕ່ງຈຸດປະສົງທົ່ວໄປ.
ໃນຂະນະທີ່ tensor cores ທີ່ພັດທະນາໂດຍ Nvidia, ຍັງຖືກໃຊ້ໃນ GPUs. Tensor Cores ເຮັດໃຫ້ການຄິດໄລ່ຄວາມຊັດເຈນແບບປະສົມ, ປັບການຄິດໄລ່ແບບເຄື່ອນໄຫວເພື່ອເພີ່ມການສົ່ງຂໍ້ມູນໃນຂະນະທີ່ຮັກສາຄວາມຖືກຕ້ອງ.
ໃນຄໍາສັບທີ່ງ່າຍດາຍ, cores ເຫຼົ່ານີ້ແມ່ນສ່ວນຫນຶ່ງທີ່ສໍາຄັນຂອງ GPUs ໃນຄອມພິວເຕີຂອງທ່ານເພື່ອເຮັດການຄິດໄລ່ທີ່ແນ່ນອນ. ຫຼັກ CUDA ຖືກໃຊ້ເພື່ອຄູນສອງຕົວເລກ ແລະເພີ່ມພວກມັນໃສ່ຕົວເລກອື່ນ.
ເມື່ອ Tensor core ຄືກັນແຕ່ມີ matrices 4×4. ການຄິດໄລ່ເຫຼົ່ານີ້ແມ່ນພື້ນຖານເຮັດໃຫ້ຮູບພາບໄວຂຶ້ນສໍາລັບທ່ານ.
CUDA ແມ່ນຫຍັງ?
Compute Unified Device Architecture in short CUDA ພັດທະນາໂດຍ Nvidia, ປ່ອຍອອກມາເມື່ອວັນທີ 23 ມິຖຸນາ 2007, ເປັນແພລດຟອມຄອມພິວເຕີ້ຂະໜານ ແລະ ການໂຕ້ຕອບການຂຽນໂປຣແກຣມແອັບພລິເຄຊັນ (API).
ນັ້ນ. ເຮັດໃຫ້ຊອບແວທີ່ຈະນໍາໃຊ້ປະເພດສະເພາະຂອງຫນ່ວຍປະມວນຜົນຮູບພາບ (GPUs) ສໍາລັບການປຸງແຕ່ງໂດຍທົ່ວໄປ, ວິທີການທີ່ຮູ້ຈັກເປັນການຄິດໄລ່ຈຸດປະສົງທົ່ວໄປກ່ຽວກັບການGPUs (GPU).
CUDA ແມ່ນຊັ້ນຊອບແວທີ່ໃຫ້ການເຂົ້າເຖິງໂດຍກົງກັບຊຸດຄຳສັ່ງສະເໝືອນຂອງ GPU ແລະອົງປະກອບການຄຳນວນຂະໜານສຳລັບການປະຕິບັດຂອງແກ່ນຄອມພິວເຕີ. CUDA ໄດ້ຖືກພັດທະນາເພື່ອເຮັດວຽກກັບພາສາການຂຽນໂປລແກລມທີ່ແຕກຕ່າງກັນລວມທັງ C, C ++, ແລະ Fortran.
ເບິ່ງ_ນຳ: Cancerian ເດືອນມິຖຸນາ VS ມະເຮັງເດືອນກໍລະກົດ ( Zodiac Signs ) - ຄວາມແຕກຕ່າງທັງຫມົດຄວາມສາມາດໃນການເຮັດວຽກກັບພາສາການຂຽນໂປລແກລມທີ່ແຕກຕ່າງກັນເຮັດໃຫ້ມັນງ່າຍຂຶ້ນສໍາລັບຜູ້ຊ່ຽວຊານໃນການຂຽນໂປລແກລມຂະຫນານເພື່ອນໍາໃຊ້ຊັບພະຍາກອນ GPU ຖ້າພວກເຮົາແຍກມັນອອກຈາກ APIs ກ່ອນຫນ້ານີ້ເຊັ່ນ Direct3D ຫຼື OpenGL, ເຊິ່ງຕ້ອງການໃຫ້ທ່ານມີຄວາມກ້າວຫນ້າທາງດ້ານຫຼາຍ. ພື້ນຖານທັກສະໃນການຂຽນໂປລແກລມກາຟິກ.
GPU ກັບ CUDA ຍັງສະຫນັບສະຫນູນກອບການດໍາເນີນໂຄງການ, ເຊັ່ນ OpenMP, OpenACC, OpenCL, ແລະຍັງ HIP ທີ່ສາມາດລວບລວມລະຫັດດັ່ງກ່າວເປັນ CUDA. ຊື່ທໍາອິດທີ່ໃຊ້ສໍາລັບ CUDA ແມ່ນຕົວຫຍໍ້ຂອງ Compute Unified Device Architecture. ຢ່າງໃດກໍຕາມ, Nvidia ຕໍ່ມາໄດ້ຫຼຸດລົງຄໍາສັບທີ່ໃຊ້ທົ່ວໄປ.
ບັດກາຟິກ Nvidia ທີ່ມີປະສິດທິພາບ GTX 1080 Ti
ເພີ່ມເຕີມກ່ຽວກັບ CUDA
ໃນຖານະເປັນໂປເຊດເຊີຄອມພິວເຕີພິເສດ, ໜ່ວຍປະມວນຜົນກຣາບຟິກ (GPU) ຕອບສະໜອງໄດ້ຄວາມຕ້ອງການຂອງຕົວຈິງ. -time, compute-intensive-computing-intensive graphics workloads.
ປະມານ 2012 GPUs ພັດທະນາ ແລະໄດ້ກາຍເປັນລະບົບ multi-core ຂະຫນານສູງເຮັດໃຫ້ການປະມວນຜົນຂໍ້ມູນປະສິດທິພາບສໍາລັບຕັນໃຫຍ່.
ເມື່ອປະມວນຜົນຂໍ້ມູນຂະໜາດໃຫຍ່ແບບຂະໜານກັນ, ການອອກແບບນີ້ແມ່ນເໜືອກວ່າຫົວໜ່ວຍປະມວນຜົນກາງທີ່ມີຈຸດປະສົງທົ່ວໄປ (CPUs) ສໍາລັບສູດການຄິດໄລ່, ເຊັ່ນ:
- ລະຫັດການເຂົ້າລະຫັດລັບ.ຟັງຊັນ
- ການຮຽນຮູ້ເຄື່ອງຈັກ
- ການຈຳລອງການເຄື່ອນໄຫວໂມເລກຸນ
- ເຄື່ອງຈັກຟີຊິກ
- ການຈັດຮຽງລຳດັບ
ການນຳໃຊ້ສະຖາປັດຕະຍະກຳ CUDA ໃນປັດຈຸບັນ ແລະ ໃນອະນາຄົດ
- ການເລັ່ງການສະແດງຂອງກຣາຟິກ 3D
- ການປ່ຽນແປງທີ່ເລັ່ງຂອງຮູບແບບໄຟລ໌ວິດີໂອ
- ການເລັ່ງການເຂົ້າລະຫັດ, ການຖອດລະຫັດ, ແລະການບີບອັດ
- ຊີວະປະຫວັດສາດ, ຕົວຢ່າງ: NGS DNA sequencing BarraCUDA
- ການຄຳນວນທີ່ແຈກຢາຍ ເຊັ່ນ: ການຄາດເດົາຄວາມສອດຄ່ອງເດີມຂອງໂປຣຕີນ
- ການຈຳລອງການວິເຄາະທາງການແພດ, ຕົວຢ່າງ, virtual reality ໂດຍອີງໃສ່ຮູບພາບສະແກນ CT ແລະ MRI
- ການຈຳລອງທາງກາຍຍະພາບ, ໂດຍສະເພາະໃນການເຄື່ອນໄຫວຂອງນ້ຳ
- ການຝຶກອົບຮົມເຄືອຂ່າຍປະສາດໃນບັນຫາການຮຽນຮູ້ຂອງເຄື່ອງຈັກ
- ການຮັບຮູ້ໃບໜ້າ
- ໂຄງການຄອມພິວເຕີທີ່ແຈກຢາຍ, ເຊັ່ນ: [email protected] ແລະໂຄງການອື່ນໆທີ່ໃຊ້ BOINC
- ນະໂຍບາຍດ້ານໂມເລກຸນ
- ການຂຸດຄົ້ນ cryptocurrencies
- ໂຄງສ້າງຈາກຊອບແວການເຄື່ອນໄຫວ (SfM)
Tensor Core ແມ່ນຫຍັງ?
ຫຼັກພິເສດທີ່ເອີ້ນວ່າ Tensor Cores ອະນຸຍາດໃຫ້ມີການຝຶກອົບຮົມຄວາມຊັດເຈນແບບປະສົມ. ການຜະລິດເບື້ອງຕົ້ນຂອງແກນພິເສດເຫຼົ່ານີ້ເຮັດອັນນີ້ດ້ວຍສູດການຄິດໄລ່ການເພີ່ມຄູນ. ນີ້ເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະຄູນແລະເພີ່ມສອງ 4 x 4 FP16 matrices ກັບ 4 x 4 FP16 ຫຼື FP32 matrix.
ຜົນໄດ້ຮັບສຸດທ້າຍຈະເປັນ FP32 ມີພຽງແຕ່ການສູນເສຍຄວາມແມ່ນຍໍາເລັກນ້ອຍ, ຄອມພິວເຕີ້ຄວາມແມ່ນຍໍາປະສົມໄດ້ຖືກກໍານົດເປັນເຊັ່ນນັ້ນເຖິງແມ່ນວ່າ.matrices ການປ້ອນຂໍ້ມູນອາດຈະເປັນ FP16 ຄວາມແມ່ນຍໍາຕໍ່າ.
ໃນພາກປະຕິບັດ, ສິ່ງນີ້ເລັ່ງການຄຳນວນຢ່າງມີອິດທິພົນໜ້ອຍຕໍ່ກັບປະສິດທິພາບສຸດທ້າຍຂອງຕົວແບບ. ຄວາມອາດສາມາດນີ້ໄດ້ຖືກຂະຫຍາຍໂດຍສະຖາປັດຕະຍະກໍາຈຸລະພາກຕໍ່ມາເພື່ອເປັນຕົວແທນຈໍານວນຄອມພິວເຕີທີ່ຊັດເຈນຫນ້ອຍລົງ.
ລຸ້ນທຳອິດໄດ້ຖືກນຳສະເໜີດ້ວຍສະຖາປັດຕະຍະກຳຈຸລະພາກ Volta ເລີ່ມຕົ້ນທີ່ V100, ຮູບແບບຄວາມແມ່ນຍຳຂອງຕົວເລກຄອມພິວເຕີເພີ່ມເຕີມໄດ້ມີໃຫ້ສຳລັບການຄຳນວນດ້ວຍສະຖາປັດຕະຍະກຳ GPU ໃໝ່ກັບແຕ່ລະລຸ້ນທີ່ຜ່ານໄປ.
ພວກເຮົາຈະເວົ້າກ່ຽວກັບຄວາມອາດສາມາດ ແລະການເຮັດວຽກຂອງ Tensor Cores ໄດ້ປ່ຽນແປງ ແລະປັບປຸງໃຫ້ດີຂຶ້ນກັບແຕ່ລະການຜະລິດສະຖາປັດຕະຍະກຳຈຸລະພາກໃນພາກຕໍ່ໄປນີ້.
ຮູບພາບທີ່ສະແດງດ້ວຍກາຟິກທີ່ເຮັດໂດຍ Titan V
Tensor Cores ເຮັດວຽກແນວໃດ?
ລຸ້ນທຳອິດ:
ສະຖາປັດຕະຍະກຳຈຸລະພາກຂອງ Volta GPU ຖືກລວມເຂົ້າກັບ Tensor Cores ລຸ້ນທຳອິດ. ຫຼັກເຫຼົ່ານີ້ເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະຝຶກອົບຮົມທີ່ມີຄວາມແມ່ນຍໍາປະສົມແລະຮູບແບບຕົວເລກ FP16.
ເບິ່ງ_ນຳ: “ອັນໃດ” ທຽບກັບ “ອັນໃດ” (ຄວາມແຕກຕ່າງອະທິບາຍ) – ຄວາມແຕກຕ່າງທັງໝົດອັນນີ້ອາດຈະໄດ້ຮັບການຊຸກຍູ້ເຖິງ 12 ເທົ່າໃນ teraFLOP throughput ສໍາລັບ GPUs ບາງອັນ. 640 cores ຂອງ V100 ຊັ້ນເທິງໃຫ້ເຖິງ 5 ເທົ່າຂອງຄວາມໄວການປະຕິບັດທີ່ສູງກວ່າ Pascal GPUs ຂອງລຸ້ນກ່ອນ.
ລຸ້ນທີສອງ:
ດ້ວຍການແນະນຳ Turing GPUs, Tensor Cores ລຸ້ນທີສອງໄດ້ຖືກນຳສະເໜີ. Int8, Int4, ແລະ Int1 ໄດ້ຖືກເພີ່ມເຂົ້າໃນບັນຊີລາຍຊື່ຂອງຄວາມແມ່ນຍໍາຂອງ Tensor Core ທີ່ສະຫນັບສະຫນູນ, ເຊິ່ງແມ່ນກ່ອນຫນ້ານີ້ຈໍາກັດ FP16.
ເນື່ອງຈາກຂັ້ນຕອນການຝຶກອົບຮົມຄວາມແມ່ນຍໍາປະສົມ, ຜ່ານການປະຕິບັດຂອງ GPU ໄດ້ເພີ່ມຂຶ້ນເຖິງ 32 ເທົ່າເມື່ອທຽບໃສ່ກັບ Pascal GPUs.
ຮຸ່ນທີສາມ:
ສະຖາປັດຕະຍະກຳໃນ GPU Ampere ຂະຫຍາຍຄວາມກ້າວໜ້າກ່ອນໜ້ານີ້ຂອງ Volta ແລະ Turing microarchitectures ໂດຍການເພີ່ມການຮອງຮັບ FP64, TF32, ແລະ bfloat16 precision.
ການເຝິກອົບຮົມການຮຽນຮູ້ຢ່າງເລິກເຊິ່ງ ແລະກິດຈະກຳການອະນິຈາແມ່ນເລັ່ງໃຫ້ຫຼາຍຂຶ້ນໂດຍຮູບແບບຄວາມແມ່ນຍໍາພິເສດເຫຼົ່ານີ້. ຕົວຢ່າງເຊັ່ນ, ຮູບແບບ TF32 ເຮັດວຽກຄ້າຍຄືກັນກັບ FP32 ໃນຂະນະທີ່ຍັງຮັບປະກັນຄວາມໄວເຖິງ 20x ໂດຍບໍ່ມີການປ່ຽນແປງລະຫັດໃດໆ.
ຈາກນັ້ນ, ດ້ວຍລະຫັດສອງສາມເສັ້ນ, ການປະຕິບັດຄວາມແມ່ນຍໍາແບບປະສົມອັດຕະໂນມັດຈະເລັ່ງການຝຶກອົບຮົມຕື່ມອີກ 2x.
NVLink ລຸ້ນທີ 3 ເພື່ອເປີດໃຊ້ການໂຕ້ຕອບຫຼາຍ GPU ທີ່ໄວຢ່າງເດັ່ນຊັດ, ແກນ Ray Tracing ລຸ້ນທີ 3 ແລະຄວາມຊ່ຽວຊານກັບຄະນິດສາດເມທຣິກທີ່ກະແຈກກະຈາຍແມ່ນລັກສະນະເພີ່ມເຕີມຂອງສະຖາປັດຕະຍະກຳຈຸລະພາກຂອງ Ampere .
ລຸ້ນທີ 4:
ມີການວາງແຜນການເປີດຕົວລຸ້ນທີ 4 ຂອງສະຖາປັດຕະຍະກຳຈຸນລະພາກຂອງ Hopper ໃນອະນາຄົດ. Tensor Cores ລຸ້ນທີ 4 ໃນ H100 ຕໍ່ໄປ.
ເຊິ່ງຄາດວ່າຈະອອກໃນເດືອນມີນາ 2022, ຈະສາມາດຈັດການກັບຮູບແບບຄວາມແມ່ນຍໍາຂອງ FP8 ແລະ, ອີງຕາມ NVIDIA, ຈະເລັ່ງຮູບແບບພາສາຂະຫນາດໃຫຍ່ "ໂດຍ 30X ທີ່ຫນ້າປະຫລາດໃຈ. ຫຼາຍກວ່າລຸ້ນກ່ອນ."
ບັດກາຟິກ RTX ແມ່ນໃຊ້ສໍາລັບການສະແດງຮູບພາບໄວຫຼາຍຍ້ອນວ່າມັນປະກອບດ້ວຍ tensor cores.
ຄວາມແຕກຕ່າງລະຫວ່າງ CUDA Cores ແລະ Tensor Cores
Tensor cores ປະຈຸບັນຈໍາກັດພຽງແຕ່ Titan V ແລະ Tesla V100. ຫຼັກ 5120 CUDA ໃນ GPU ທັງສອງມີຄວາມອາດສາມາດສູງສຸດຂອງການປະຕິບັດການຄູນ-accumulate ຄວາມແມ່ນຍໍາດຽວ (ຕົວຢ່າງ, ໃນ fp32: x += y * z) ຕໍ່ໂມງ GPU (ເຊັ່ນ: Tesla V100 PCIe ຄວາມຖີ່ແມ່ນ 1.38Gz).
ແຕ່ລະ tensor core ດໍາເນີນການຢູ່ໃນ 4 × 4 matrices ຂະຫນາດນ້ອຍສໍາລັບ matrices ຂະຫນາດນ້ອຍ. ຕໍ່ຫນຶ່ງໂມງ GPU, ແຕ່ລະ tensor core ສາມາດເຮັດສໍາເລັດຫນຶ່ງ matrix multiply-accumulate.
ມັນຄູນສອງ 4×4 FP16 matrices ແລະເພີ່ມ 4×4 FP32 matrix ທີ່ສົ່ງຜົນໃຫ້ accumulator (ນັ້ນກໍ່ແມ່ນ fp32 4×4 matrix).
ເນື່ອງຈາກວ່າ input matrices ແມ່ນ fp16 ໃນຂະນະທີ່ຜົນການຄູນ ແລະ accumulator ແມ່ນ fp32, algorithm ເປັນທີ່ຮູ້ຈັກເປັນຄວາມແມ່ນຍໍາປະສົມ.
ຄຳສັບທີ່ຖືກຕ້ອງອາດຈະເປັນພຽງແຕ່ “4×4 cores matrix,” ແຕ່ທີມງານການຕະຫຼາດ NVIDIA ເລືອກໃຊ້ “tensor cores.”
Tensor cores ອະທິບາຍແບບຫຍໍ້ໆ
GPU card | CUDA cores | 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 ແລະ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)<22 | 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 | 1GB ຫຼື 2 GB |
GPUs ທີ່ບັນຈຸ CUDA cores
ສະຫຼຸບ
- CUDA ແລະ Tensor cores ແມ່ນຜະລິດຕະພັນ, ທັງສອງພັດທະນາໂດຍບໍລິສັດທີ່ເອີ້ນວ່າ Nvidia. CUDA ຫຍໍ້ມາຈາກ Compute Unified Device Architecture. ຫຼັກ CUDA ເຫຼົ່ານີ້ມີຢູ່ໃນ GPUs ຂອງທ່ານ, ໂທລະສັບສະຫຼາດ, ແລະແມ້ກະທັ້ງລົດຂອງທ່ານ.
- ໃນຂະນະທີ່ tensor cores, ເຊິ່ງຖືກພັດທະນາໂດຍ Nvidia, ຍັງຖືກໃຊ້ໃນ GPUs. ແກນພິເສດທີ່ເອີ້ນວ່າ "ແກນ Tensor" ອະນຸຍາດໃຫ້ການຝຶກອົບຮົມຄວາມຊັດເຈນແບບປະສົມ. ລຸ້ນທຳອິດຂອງ Tensor Cores ເຮັດໃຫ້ມັນເປັນໄປໄດ້ໃນການຝຶກອົບຮົມທີ່ມີຄວາມແມ່ນຍໍາປະສົມ ແລະຮູບແບບຕົວເລກ FP16.
- ອັນນີ້ອາດຈະໄດ້ຮັບການຊຸກຍູ້ເຖິງ 12 ເທົ່າໃນ teraFLOP throughput ສໍາລັບ GPUs ບາງອັນ. Int8, Int4, ແລະ Int1 ໄດ້ຖືກເພີ່ມເຂົ້າໃນບັນຊີລາຍຊື່ຂອງຄວາມແມ່ນຍໍາຂອງ Tensor Core ທີ່ສະຫນັບສະຫນູນ.
- ເນື່ອງມາຈາກການປະສົມຂັ້ນຕອນການຝຶກອົບຮົມຄວາມແມ່ນຍໍາ, ການປະຕິບັດຂອງ GPU ໄດ້ເພີ່ມຂຶ້ນເຖິງ 32 ເທົ່າ. ມີການວາງແຜນການປ່ອຍ Tensor Cores ລຸ້ນທີສີ່ໂດຍອີງໃສ່ສະຖາປັດຕະຍະກຳຈຸລະພາກຂອງ Hopper ໃນອະນາຄົດ.