RISC-V 64 bit IP для високої продуктивності - Semiwiki

RISC-V 64 bit IP для високої продуктивності – Semiwiki

Вихідний вузол: 2855188

RISC-V як архітектура набору інструкцій (ISA) швидко набула комерційного значення та актуальності з моменту випуску для відкритої спільноти у 2015 році, залучаючи багатьох постачальників IP, які зараз пропонують різноманітні RTL-ядра. Роджер Еспаса, генеральний директор і засновник Напівдинаміка, на заходах RISC-V представив, як їх IP налаштований для обчислювальних завдань, які потребують високої пропускної здатності та високопродуктивних ядер із векторними блоками. Компанія Semidynamics була заснована в 2016 році, має штаб-квартиру в Барселоні, і вже має клієнтів у США та Азії, пропонуючи дві настроювані IP-адреси RISC-V:

  • Avispado – в порядку RISCV64GCV, підтримує AXI і CHI
  • Atrevido – нестандартний RISCV64GC, підтримує AXI і CHI

Типовий ЦП має кілька великих ядер і великий кеш-пам’ять, що робить їх простими для програмування, хоча вони не мають високої продуктивності.

Графічні процесори, навпаки, мають багато крихітних ядер, які забезпечують високу продуктивність для паралельного коду, але їх важче програмувати та додають затримку зв’язку через шину PCIe, коли дані потрібно передавати вперед і назад між ЦП і ГП.

CPU, GPU мін
Порівняння CPU, GPU

Підхід Espasa полягає у використанні ядра RISC-V, підключеного до обчислювальних ядер, що полегшує програмування, підвищує продуктивність для паралельних кодів і забезпечує нульову затримку зв’язку. Центральний процесор плюс векторний блок забезпечують найкраще з обох світів.

ЦП RISC-V плюс модуль Vector, вища продуктивність
Центральний процесор плюс блок Vector

Специфікація RISC-V документує 32 векторні регістри, і ви можете додати кілька векторних ядер разом із підключенням до вашого кешу всередині векторного блоку.

Вектор Одиниця мін
одиничний вектор

За допомогою Semidynamics IP ви можете налаштувати кількість векторних ядер: 4, 8, 16, 32. Інший спосіб поглянути на це — зауважити, що 4 векторні ядра — це 256-біт, а до 32 векторних ядер — це 2,048-біт.

Користувачі IP також вибирають типи даних: FP64, FP32, FP16, BF16, INT64, INT32, INT16, INT8. Для програми AI вони можуть вибрати типи даних FP16, BF16, тоді як програма HPC може вибрати FP64, FP32.

Третя настройка — це довжина векторного регістра, де для більшої продуктивності та меншої потужності ви можете зробити векторний регістр більшим за векторний блок.

Ось блок-схема Atrevideo 423-V8:

Atrevido хв
Atrevido 423 + векторний блок V8

Векторний блок повністю вийшов з ладу, що є унікальним серед постачальників RISC-V IP. Комбінація векторного блоку та блоку Gazzillion здатна передавати потокові дані зі швидкістю понад 60 байт/цикл.

Продуктивність Vector + Gazzillion, Bytes/Cycle
Висока пропускна здатність: Vector + Gazzillion

Фіолетова лінія показує продуктивність читання, а в кеш-пам’яті L1 вона становить 20-60 байт/цикл, на інших машинах спостерігається швидке падіння пропускної здатності після виходу з кешу L1, тоді як цей підхід продовжує працювати зі згладжуванням на 56. Навіть при переході до пам’яті DDR показує пропускну здатність 40. З тактовою частотою 1.0 ГГц, що забезпечує пропускну здатність 40 ГБ/с.

IP-клієнти можуть навіть додати свій власний код RTL, підключений до Vector Unit для власних цілей.

Продуктивність множення матриць важлива в робочих навантаженнях штучного інтелекту, і на векторному модулі OOO V8 є пік 16 FP64 FLOPS/цикл і 99% піку для розміру матриці >= 400. Для невеликого розміру матриці 24×24 продуктивність становить 7 FP64 FLOPS/цикл, або 50% від піку. Матричне множення для FP16 з використанням векторного блоку з 8 векторними ядрами має пік 64 FP16 FLOPS/цикл і 99% піку для M >= 600.

Тест виявлення об’єктів у реальному часі під назвою YOLO (You Only Look Once) був запущений на платформі Atrevido 423-V8, і він показав на 58% вищу продуктивність на векторне ядро, ніж у конкурентів. Ці результати були для відео з 24 шарами. 5.56 Gops/frame і приблизно 9M параметрів.

Виконання YOLO
Порівняння YOLO

Підсумки

Вибір постачальника RISC-V IP є складним завданням, тому знання таких постачальників, як Semidynamics, може допомогти вам краще зрозуміти, як індивідуальний підхід може найбільш ефективно виконувати ваші конкретні робочі навантаження. З Semidynamics ви можете вибирати між варіантами архітектури, як-от у порядку або поза порядком, з або без векторних одиниць. Цифри, надані цим постачальником IP, виглядають багатообіцяючими, і я з нетерпінням чекаю їхніх майбутніх оголошень.

Схожі відео

Поділитися цим дописом через:

Часова мітка:

Більше від Semiwiki