Проектът VeriGPU обяви разработването на отворен GPU

Проектът Разкриха VeriGPU преди няколко дни започна работа по разработването на отворен GPU, който има за цел да бъде разработен под езика за моделиране и описание на електронните системи Verilog.

За тези, които не са запознати с VeriGPU, трябва да знаете, че той е позициониран като специфичен за приложения процесор (ASIC), оптимизиран за ускоряване на изчисленията, свързани със системите за машинно обучение.

начин да започнете, проектът се разработва с помощта на симулатора Verilog, но след като е готов, може да се използва за производство на истински чипове.

Плановете включват поддръжка за рамката за дълбоко обучение на PyTorch и възможността за разработване на приложения за VeriGPU с помощта на HIP (Heterogeneous Computing Interface) API. В бъдеще не е изключено включването на поддръжка за други API, като SYCL и NVIDIA CUDA.

Важно е да се спомене това развитието на този графичен процесор е насочено директно към обучение за машинно обучение. Така че в идеалния случай трябва да поддържа текущите рамки за машинно обучение като PyTorch и Tensorflow, това означава, че почти сигурно трябва да поддържа NVIDIA CUDA или AMD HIP.

Въпреки че също се споменава, че Знам, че мога да внедря OpenCL или SYCL интерфейс, въпреки че поддръжката за основни рамки понастоящем е ограничена. В DeepCL има специална OpenCL рамка за дълбоко обучение, но тя има относително ограничен набор от слоеве на невронни мрежи и възможни мрежови топологии, в сравнение с PyTorch и Tensorflow.

Понастоящем не възнамеряваме да внедряваме извънредно изпълнение, т.е. стартиране на една инструкция, преди да е започнала предишната, тъй като това е трудно в сценарий с многонишкова работа с една инструкция (SIMT) и тъй като ядрата използват повече площ на матрицата. , и следователно по-малко на брой (или по-скъпи).

От друга страна, ние ще приложим паралелно изпълнение на инструкции, при което започваме инструкция, докато предишната инструкция все още се изпълнява. Това е стандартно и сравнително леко, не заема твърде много площ на матрицата.

В момента не се прилага никакво кеширане от какъвто и да е вид (няма ниво 1, ниво 2, ниво 3, дори кеширане на инструкции :P). Тъй като възнамерявам да направя GPU, който има различен кеш механизъм от CPU, ще помисля за това, след като започне да прилича повече на GPU.

Графичният процесор се развива въз основа на набора от инструкции RISC-V, но резултантната архитектура на вътрешния набор от инструкции на GPU е лошо съвместима с RISC-V ISA, тъй като в ситуации, когато оформлението на GPU не съответства на RISC-V изобразяването, освен че не поставя задачата за поддържане на съвместимост с RISC-V .

От развитието се фокусира върху възможностите, необходими за системите за машинно обучениеследователно, за да се намали размерът и сложността на масива от чипове, се използва само форматът с плаваща запетая BF16 и се използват само операциите с плаваща запетая, които са необходими за машинно обучение, като exp, log, tanh и sqrt на разположение.

Сред компонентите, които вече са налични, например драйверът на графичния процесор, APU (ускорен процесор) за целочислени операции («+»,»-«,»/»,»*»), единица за операции с плаваща запетая («+ », »*») и клон, както и поддръжка за HIP компилатора.

За създаване на приложения асемблер и е осигурена поддръжка за компилиране на C++ код въз основа на LLVM. От очакваните характеристики се открояват паралелното изпълнение на инструкциите, кеширането на данни и паметта на инструкциите, операциите SIMT (Single Instruction Multiple Thread).

И накрая, ако се интересувате да научите повече за това относно разработването на този GPU с отворен код, трябва да знаете, че разработките на проекта се разпространяват под лиценза на MIT и можете да се консултирате с кода, както и напредъка на проекта от следната връзка.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.