Ако сте следвали Nvidia и AMD, вероятно знаете за спецификациите на техните графични процесори, които и двете компании обичат да използват. Например, Nvidia обича да подчертава ядрото на CUDA, за да разграничи предлагането си от картите на AMD, докато AMD прави същото със своите изчислителни единици.
Но какво всъщност означават тези термини? Дали CUDA ядрото е същото като Compute Unit? Ако не, тогава каква е разликата?
Нека отговорим на тези въпроси и ще видим какво прави AMD GPU различен от този на Nvidia.
Обща архитектура на графичен процесор
Всички графични процесори, независимо дали са от AMD, Nvidia или Intel, работят по същия начин като цяло. Те имат същите ключови компоненти и цялостното оформление на тези компоненти е подобно на по -високо ниво.
Така че от гледна точка отгоре надолу всички графични процесори са еднакви.
Когато разгледаме специфичните, патентовани компоненти, които всеки производител опакова в своя графичен процесор, разликите започват да се появяват. Например, Nvidia вгражда Tensor ядра в своите графични процесори, докато AMD графичните процесори нямат Tensor ядра.
По подобен начин AMD използва компоненти като Infinity Cache, които графичните процесори на Nvidia нямат.
Така че, за да разберем разликата между Compute Units (CUs) и CUDA ядра, първо трябва да разгледаме цялостната архитектура на GPU. След като разберем архитектурата и видим как работи GPU, можем ясно да видим разликата между Compute Units и CUDA ядра.
Как работи GPU?
Първото нещо, което трябва да разберете, е, че графичният процесор обработва хиляди или дори милиони инструкции едновременно. Следователно графичният процесор се нуждае от много малки, силно паралелни ядра, за да обработва тези инструкции.
Тези малки GPU ядра са различни от големите CPU ядра, които обработват по една сложна инструкция на ядро наведнъж.
Например, Nvidia RTX 3090 има 10496 CUDA ядра. От друга страна, най-добрият AMD Threadripper 3970X има само 64 ядра.
Така че, не можем да сравняваме GPU ядра с CPU ядра. Има доста разлики между CPU и GPU защото инженерите са ги проектирали да изпълняват различни задачи.
Освен това, за разлика от средния процесор, всички ядра на графичния процесор са подредени в клъстери или групи.
И накрая, група от ядра на графичен процесор има други хардуерни компоненти като ядра за обработка на текстури, единици с плаваща запетая и кешове
да помогне за обработката на милиони инструкции едновременно. Този паралелизъм определя архитектурата на графичния процесор. От зареждането на инструкция до обработката й, GPU прави всичко според принципите на паралелната обработка.
- Първо, графичният процесор получава инструкция за обработка от опашка от инструкции. Тези инструкции почти винаги са предимно свързани с вектори.
- След това, за да разреши тези инструкции, планировчик на нишки ги предава на отделни клъстери на ядрото за обработка.
- След получаване на инструкциите, вграден ядрен планировчик на клъстери възлага инструкциите на ядра или обработващи елементи за обработка.
- И накрая, различни основни клъстери обработват различни инструкции паралелно и резултатите се показват на екрана. Така че всички графики, които виждате на екрана, например видео игра, са само колекция от милиони обработени вектори.
Накратко, графичният процесор има хиляди обработващи елементи, които наричаме „ядра“, подредени в клъстери. Плановиците възлагат работа на тези клъстери, за да постигнат паралелизъм.
Какво представляват изчислителните единици?
Както се вижда в предишния раздел, всеки графичен процесор има клъстери от ядра, съдържащи обработващи елементи. AMD нарича тези основни клъстери „Изчислителни единици“.
www.youtube.com/watch? v = uu-3aEyesWQ & t = 202s
Изчислителните единици са съвкупност от ресурси за обработка като паралелни аритметични и логически единици (ALU), кешове, единици с плаваща запетая или векторни процесори, регистри и малко памет за съхраняване на нишка информация.
За да бъде просто, AMD рекламира само броя на изчислителните единици на своите графични процесори и не описва подробно основните компоненти.
Така че, винаги когато виждате броя на изчислителните единици, мислете за тях като за група от обработващи елементи и всички свързани компоненти.
Какво представляват ядрата на CUDA?
Когато AMD обича да поддържа нещата прости с броя на изчислителните единици, Nvidia усложнява нещата, като използва термини като ядра CUDA.
Ядрата на CUDA не са точно ядра. Те са просто единици с плаваща запетая, които Nvidia обича да определя като ядра за маркетингови цели. И ако си спомняте, основните клъстери имат много вградени единици с плаваща запетая. Тези единици извършват векторни изчисления и нищо друго.
Така че да ги наречем „ядро“ е чист маркетинг.
Следователно ядрото на CUDA е обработващ елемент, който изпълнява операции с плаваща запетая. В един ядрен клъстер може да има много CUDA ядра.
И накрая, Nvidia нарича основни клъстери „Поточни мултипроцесори или SM“. SM са еквивалентни на AMD Compute Units, тъй като Compute Units са самите ядра.
Каква е разликата между изчислителните единици и CUDA ядрата?
Основната разлика между Compute Unit и CUDA ядро е, че първият се отнася до основен клъстер, а вторият се отнася до обработващ елемент.
За да разберем по -добре тази разлика, нека вземем за пример скоростна кутия.
Скоростната кутия е единица, състояща се от множество предавки. Можете да мислите за скоростната кутия като за изчислителна единица, а за отделните предавки-за единици с плаваща запетая на ядра CUDA.
С други думи, когато Compute Units са колекция от компоненти, CUDA ядрата представляват специфичен компонент в колекцията. Така че, Compute Units и CUDA ядрата не са сравними.
Това е и причината, когато AMD споменава броя на изчислителните единици за своите графични процесори, те винаги са доста по -ниски в сравнение с конкурентните Nvidia карти и техния брой CUDA ядра. По -благоприятно сравнение би било между броя на поточните мултипроцесори на картата Nvidia и броя на изчислителните единици на картата AMD.
Свързани: AMD 6700XT срещу Nvidia RTX 3070: Кой е най -добрият графичен процесор под $ 500?
Ядрата и изчислителните единици на CUDA са различни и не са сравними
Компаниите имат навика да използват объркваща терминология, за да представят своите продукти в най -добрата светлина. Това не само обърква клиента, но и затруднява проследяването на важните неща.
Така че, уверете се, че знаете какво да търсите, когато търсите графичен процесор. Да стоите далеч от маркетинговия жаргон ще направи решението ви много по-добро и без стрес.
Ако сте геймър, може да се изкушите да надстроите графичната си карта до серия 30 на NVIDIA. Но заслужава ли си?
Прочетете Напред
- Обяснена технология
- Графична карта
- Nvidia
- AMD процесор
Фавад е писател на свободна практика на пълен работен ден. Той обича технологиите и храната. Когато не яде или пише за Windows, той или играе видео игри, или пише за странния си блог Techsava.
Абонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!
Щракнете тук, за да се абонирате