Перейти до основного вмісту

Глосарій

Терміни та абревіатури, які використовуються в документації та коді фреймворку.

Основні концепції фреймворку.

ТермінВизначення
Neat (фреймворк)Ця документація описує бібліотеку — фреймворк C++/Python для створення, перевірки та запуску GStreamer конвеєрів для штучного інтелекту на платформі Modalix.
ВузолНайменша складова конвеєра. Типізований обгортник над елементом GStreamer. Див. include/builder/Node.h.
Повторно використовуваний фрагмент графаЦе Graph, який використовується як повторно використовуваний компонент, наприклад, фрагмент попередньої/інференційної/пост-обробки моделі або допоміжний модуль введення/виведення.
ГрафЕтап збирання, який перетворює вузли на виконуваний процес.

| Запуск | Активний, працюючий конвеєр. Подавайте зразки на вхід, отримуйте зразки на виході. | | Модель | Спрощений інтерфейс для завантаження та запуску скомпільованого архіву моделі .tar.gz. | | MPK | Файл JSON, що містить контракт для виконання моделі (mpk.json або *_mpk.json), який входить до .tar.gz архіву моделі. |

| Приклад | Одиниця даних у конвеєрі цього фреймворку — містить тензор або закодовані медіадані разом із метаданими. |

| Тензор | – це структуроване представлення буфера пікселів, аудіо або результатів обчислень у фреймворку. | | Тензорний буфер | – це область пам’яті, яка використовується для зберігання даних Tensor. Містить трійку значень: (buffer_id, paddr, vaddr). |

| Сегмент | Іменована область пам’яті з розподільником ресурсів і метаданими доступу. Буфери створюються в межах сегментів. |

Апаратне забезпечення

ТермінВизначення
ModalixПлатформа SiMa для периферійних обчислень зі штучним інтелектом. Ця платформа є цільовою для даного фреймворку.
MLA— основний апаратний прискорювач машинного навчання (Machine Learning Accelerator) у складі системи на кристалі (SoC), який використовується для виконання обчислень, пов’язаних із виведенням даних.
MLASHMСпільна пам’ять MLA — область пам’яті з низькою затримкою, з якої MLA здійснює читання.
EV74 / CVUБлок обчислень для обробки зображень — SIMD-сумісний цифровий сигнальний процесор для попередньої та подальшої обробки.

| A65 | Застосунок, що використовує ARM-ядра, на яких працює Linux. |

| APU | Блок обробки аудіо. | | M4 | Ядро Cortex-M4, що використовується для низькорівневої координації (RPMsg, апаратна послідовність). | | TVM | Apache TVM — це компілятор, який використовується у фреймворку як резервний варіант для обробки операцій на стороні ЦП, якщо MLA не може їх обробити. | | VCCM | Це область узгодженої пам’яті всередині SoC, яка використовується деякими прискорювачами. | | OCM | Внутрішня пам’ять, що використовується MLA. |

| DMS | Direct Memory Server — служба контролера/розподільника пам’яті SoC. | | RPMsg | Міжпроцесорний обмін повідомленнями — канал міжпроцесорної взаємодії між A65 і M4. |

| IOMMU | — блок керування пам’яттю вводу/виводу, який відображає фізичну пам’ять у віртуальну для апаратного забезпечення. |

Формати даних.

ТермінВизначення

| BF16 | Brain Float 16 — двійковий формат IEEE 754 з 16 бітами, що має повний діапазон показника ступеня, як у FP32. Переважний тип даних з плаваючою комою, який використовується в MLA. | | NV12 | – формат YUV 4:2:0, де Y – це площина яскравості, а UV – переплетені площини кольоровості. Це формат декодованого відео, який використовується за замовчуванням у фреймворку. | | I420 | YUV 4:2:0 із окремими площинами Y, U, V. | | HWC / CHW | Формати розташування тензорів (Висота-Ширина-Канали проти Канали-Висота-Ширина). |

| Теселяція | Перегрупування елементів тензора таким чином, щоб він відповідав структурі, необхідній для вхідного буфера MLA. Це лише зміна порядку розташування даних, при цьому самі дані залишаються незмінними. | | Квантування | Відображення значень FP32 на INT8 із використанням коефіцієнта масштабування та значення нульової точки. |

В експлуатації / Функціонує.

ТермінВизначення
Універсальний препроцесорОновлення препроцесора, яке об’єднує довільні трансформації, надані користувачем, у стандартний граф препроцесора.
BoxDecodeПостпроцесингова операція, яка виконує не-максимальне придушення (NMS) / декодування для моделей детектування на EV74.
DetectionMetaСтруктура метаданих, яка додається до зразків вихідних даних моделі детектування функцією BoxDecode.
GstSimaMetaСтруктура метаданих GStreamer, яка використовується у фреймворку та додається до кожного буфера, яким керує фреймворк.
План маршрутизаціїРішення, яке приймається фреймворком під час компіляції, щодо того, який процесор виконує кожен етап і в яких сегментах зберігається кожен буфер.
Рядок для відтворенняДетермінований текст, який використовується для відтворення gst-launch, згенерований Graph::describe().

Див. також.