Која е разликата помеѓу CUDA јадрата и тензорските јадра? (Објаснето) – Сите разлики

 Која е разликата помеѓу CUDA јадрата и тензорските јадра? (Објаснето) – Сите разлики

Mary Davis

CUDA и Tensor јадрата се производи развиени од компанија наречена Nvidia. Значи, што се CUDA јадрата и Tensor јадрата? CUDA е кратенка од Compute Unified Device Architecture. Јадрата CUDA се присутни во вашите графички процесори, паметни телефони, па дури и во вашите автомобили, како што велат програмерите на Nvidia.

CUDA јадрата се паралелна компјутерска платформа и апликативен програмски интерфејс (API) што му овозможува на софтверот да користи специфични типови графички процесорски единици (GPU) за обработка за општа намена.

Со оглед на тоа што тензорските јадра кои исто така беа развиени од Nvidia, се користат и во графичките процесори. Тензорските јадра овозможуваат пресметување со мешана прецизност, приспособувајќи ги пресметките динамично за да ја зголемат пропусната моќ додека ја одржуваат точноста.

Со едноставни зборови, овие јадра се важен дел од графичкиот процесор на вашиот компјутер за да се направат одредени пресметки. CUDA јадрата се користат за множење на два броја и нивно додавање на друг број.

Додека тензорското јадро е исто, но со матрици 4×4. Овие пресметки во основа ви ги прикажуваат графиките побрзо.

Што е CUDA?

Накратко Compute Unified Device Architecture CUDA развиена од Nvidia, објавена на 23 јуни 2007 година, е паралелна компјутерска платформа и интерфејс за програмирање на апликации (API).

Тоа му овозможува на софтверот да користи специфични типови графички процесорски единици (GPU) за општа намена обработка, метод познат како општа намена пресметување награфички процесори (GPU).

CUDA е софтверски слој кој обезбедува директен пристап до виртуелниот сет на инструкции на графичкиот процесор и паралелните пресметковни елементи за извршување на пресметковните кернели. CUDA беше развиен за да работи со различни програмски јазици, вклучувајќи C, C++ и Fortran.

Способноста да се работи со различни програмски јазици им олеснува на специјалистите за паралелно програмирање да ги користат ресурсите на графичкиот процесор доколку ги разликуваме од претходните API како Direct3D или OpenGL, што ќе бара од вас да имате понапредно база на вештини за графичко програмирање.

ГПУ со CUDA, исто така, поддржува програмски рамки, како што се OpenMP, OpenACC, OpenCL, а исто така и HIP што може да компајлира таков код во CUDA. Првото име што се користеше за CUDA беше акроним за Compute Unified Device Architecture. Сепак, Nvidia подоцна го отфрли најчесто користениот акроним.

Моќна графичка картичка Nvidia GTX 1080 Ti

Исто така види: На пазарот VS на пазарот (Разлики) - Сите разлики

Повеќе за CUDA

Како специјализиран компјутерски процесор, единицата за графичка обработка (GPU) ги задоволува потребите на реалните -време, оптоварување на 3D графика со интензивни пресметки.

Исто така види: Која е разликата помеѓу ЕМТ и ЕМР? - Сите разлики

Околу 2012 година графичките процесори еволуираа и станаа многу паралелни повеќејадрени системи што овозможуваат ефикасна обработка на податоци за големи блокови.

Кога се обработуваат огромни блокови податоци паралелно, овој дизајн е супериорен во однос на централните процесорски единици за општа намена (CPU) за алгоритми, како што се:

  • криптографски хашфункции
  • машинско учење
  • симулации на молекуларна динамика
  • физички мотори
  • алгоритми за подредување

Употреба на CUDA Architecture Now и во иднина

  • Забрзано прикажување на 3D графика
  • Забрзана интерконверзија на формати на видео датотеки
  • Забрзано шифрирање, дешифрирање и компресија
  • Биоинформатика, на пр., NGS ДНК секвенционирање BarraCUDA
  • Дистрибуирани пресметки, како што е предвидување на природната конформација на протеините
  • Симулации за медицинска анализа, на пример, виртуелна реалност базирана на слики од КТ и МРИ скенирање
  • Физички симулации, особено во динамиката на течности
  • Обука за невронски мрежи за проблеми со машинско учење
  • Препознавање лице
  • Дистрибуирани компјутерски проекти, како што се [заштитени е-пошта] и други проекти кои користат BOINC
  • Молекуларна динамика
  • Рударење криптовалути
  • Структура од софтвер за движење (SfM)

Што е тензорско јадро?

Специјализираните јадра наречени тензорски јадра овозможуваат тренирање со мешана прецизност. Почетната генерација на овие специјализирани јадра го прави тоа со споен алгоритам за множење-додавање. Ова овозможува множење и додавање на две 4 x 4 FP16 матрици на матрицата 4 x 4 FP16 или FP32.

Крајниот резултат ќе биде FP32 со само мало губење на прецизноста, мешаните прецизни пресметки се означени како такви иаковлезните матрици може да бидат со мала прецизност FP16.

Во пракса, ова значително ги забрзува пресметките со мало влијание врз конечната ефективност на моделот. Овој капацитет е проширен од подоцнежните микроархитектури на уште помалку прецизни репрезентации на компјутерски броеви.

Првата генерација беше воведена со микроархитектурата Volta почнувајќи од V100, беа достапни повеќе формати за прецизност на компјутерски броеви за пресметување со нови микроархитектури на графичкиот процесор со секоја следна генерација.

Ќе зборуваме за тоа како капацитетот и функционалноста на Tensor Cores се менуваат и подобруваат со секоја генерација на микроархитектура во делот што следи.

Графички прикажана слика направена од Titan V

Како функционираат тензорските јадра?

Прва генерација:

Микроархитектурата на графичкиот процесор Volta беше вклучена со првата генерација на тензорски јадра. Овие јадра овозможија тренирање со мешана прецизност и формат на броеви FP16.

Ова може да има до 12x зголемување на пропусната моќ на teraFLOP за одредени графички процесори. 640-те јадра на V100 од највисокото ниво даваат до 5x зголемување на брзината на изведбата во однос на графичките процесори Pascal од претходната генерација.

Втора генерација:

Со воведувањето на Turing графички процесори, беше претставена втората генерација на Tensor Cores. Int8, Int4 и Int1 беа додадени на списокот на поддржани прецизности на Tensor Core, кои беапретходно ограничен на FP16.

Поради мешани прецизни процедури за обука, пропусната моќ на графичкиот процесор беше зголемена до 32 пати во споредба со графичките процесори Pascal.

Трета генерација:

Архитектурата во Ampere GPU се проширува на претходните достигнувања на микроархитектурите Volta и Turing со додавање поддршка за прецизностите FP64, TF32 и bfloat16.

Обуката за длабоко учење и активностите за заклучување се забрзани многу повеќе со овие екстра прецизни формати. На пример, форматот TF32 функционира слично како и FP32, а исто така гарантира забрзување до 20x без да се менува кодот.

Потоа, со само неколку линии код, автоматската мешана прецизна имплементација ќе го забрза тренингот за дополнителни 2 пати.

NVLink од трета генерација за овозможување неверојатно брзи интеракции со повеќе графички процесор, јадра од третата генерација Ray Tracing и специјализација со ретка матрична математика се дополнителни аспекти на микроархитектурата на Ampere .

Четврта генерација:

Планирано е идно издание на четвртата генерација на тензорски јадра заснована на микроархитектура Hopper. Четвртата генерација Tensor Cores во следниот H100.

која се очекува да излезе во март 2022 година, ќе може да се справи со прецизни формати на FP8 и, според NVIDIA, ќе ги забрза огромните јазични модели „за неверојатни 30X во однос на претходната генерација.“

РТХ графичка картичка есе користи за рендерирање на графика многу брзо бидејќи содржи тензорски јадра.

Разликата помеѓу CUDA јадрата и тензорските јадра

Тензорските јадра моментално се ограничени на Titan V и Tesla V100. 5120 CUDA јадра на двата графички процесори имаат максимален капацитет од една прецизна операција за множење-акумулирање (на пример, во fp32: x += y * z) по часовник на графичкиот процесор (на пр. Tesla V100 PCIe фреквенцијата е 1,38 Gz).

Секое тензорско јадро работи на 4×4 мали матрици за мали матрици. По еден часовник на графичкиот процесор, секое тензорско јадро може да заврши една операција за множење-акумулирање на матрицата.

Помножува две 4×4 FP16 матрици и ја додава матрицата 4×4 FP32 што резултира со акумулатор (тоа е исто така fp32 4×4 матрица).

Бидејќи влезните матрици се fp16 додека резултатите од множењето и акумулаторот се fp32, алгоритмот е познат како мешана прецизност.

Точниот термин веројатно би бил само „4×4 матрични јадра“, но маркетинг тимот на NVIDIA избра да користи „тензорски јадра“.

Тензорски јадра целосно објаснување накратко

GPU картичка 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 и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 GB
GeForce GTX 750 512 1GB или 2 GB

GPU што содржат CUDA јадра

Заклучок

  • CUDA и Tensor јадрата се производи, и двете развиени од компанија наречена Nvidia. CUDA е кратенка од Compute Unified Device Architecture. Овие CUDA јадра се присутни во вашите графички процесори, паметни телефони, па дури и во вашите автомобили.
  • Со оглед на тоа што тензорските јадра, кои исто така беа развиени од Nvidia, се користат и во графичките процесори. Специјализираните јадра наречени „Тензорски јадра“ ​​овозможуваат тренирање со мешана прецизност. Првата генерација на Tensor Cores овозможи да се тренира со мешана прецизност и формат на броеви FP16.
  • Ова може да има до 12x зголемување на пропусната моќ на teraFLOP за одредени графички процесори. Int8, Int4 и Int1 беа додадени на списокот со поддржани прецизности на Tensor Core.
  • Поради мешанипрецизни процедури за обука, перформансите на графичкиот процесор се зголемија до 32 пати. Планирано е идното издание на четвртата генерација на Tensor Cores базирана на микроархитектура Hopper.

Други написи

    Mary Davis

    Мери Дејвис е писателка, креатор на содржини и страствен истражувач специјализиран за споредбена анализа на различни теми. Со диплома по новинарство и повеќе од пет години искуство во оваа област, Мери има страст да доставува непристрасни и јасни информации до своите читатели. Нејзината љубов кон пишувањето започнала кога била млада и била движечка сила зад нејзината успешна кариера во пишувањето. Способноста на Мери да истражува и да ги презентира наодите во лесно разбирлив и привлечен формат ја умилкува на читателите ширум светот. Кога не пишува, Мери ужива да патува, да чита и да поминува време со семејството и пријателите.