Этот справочник платформ RKNN2 V2.5.0 предназначен для разработчиков ArmSoM при выборе и адаптации моделей. Он не подтверждает поддержку на всех платах ArmSoM: проверьте SoC платы, фактические версии Toolkit2, Runtime, драйвера NPU и BSP. В оригинале не задана единая версия ядра Linux. Аппаратная проверка на ArmSoM не выполнялась.
Источник: предоставленные китайская и английская редакции RKNN2 Supported Operators and Constraints Reference V2.5.0, 374 и 384 страницы. Китайский текст следует китайской редакции; английский, русский и немецкий — английской. Ограничения платформ не объединяются. В английском PDF рисунки и таблицы I/O содержат китайские подписи; их происхождение сохранено, добавлены редактируемые локализованные таблицы. Написание ConvTranpose и исходные уравнения LSTM/GRU сохранены; эти формулы не являются исправлениями реализации SDK.
Страницы источника: CN 368–374; EN 378–384.
Серия справочников операторов
RKNN2 V2.5.0 · RK3566/RK3568:Основы и свёртки
RKNN2 V2.5.0 · RK3566/RK3568:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RK3566/RK3568:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RK3566/RK3568:Активации, нормализация и расширения
RKNN2 V2.5.0 · RK3588:Основы и свёртки
RKNN2 V2.5.0 · RK3588:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RK3588:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RK3588:Активации, нормализация и расширения
RKNN2 V2.5.0 · RK3562:Основы и свёртки
RKNN2 V2.5.0 · RK3562:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RK3562:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RK3562:Активации, нормализация и расширения
RKNN2 V2.5.0 · RV1103/RV1106:Основы и свёртки
RKNN2 V2.5.0 · RV1103/RV1106:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RV1103/RV1106:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RV1103/RV1106:Активации, нормализация и расширения
RKNN2 V2.5.0 · RK3576/RV1126B:Основы и свёртки
RKNN2 V2.5.0 · RK3576/RV1126B:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RK3576/RV1126B:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RK3576/RV1126B:Активации, нормализация и расширения
RKNN2 V2.5.0 · RK2118:Основы и свёртки
RKNN2 V2.5.0 · RK2118:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RK2118:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RK2118:Активации, нормализация и расширения
RKNN2 V2.5.0 · RV1103B/RV1106B:Основы и свёртки
RKNN2 V2.5.0 · RV1103B/RV1106B:Рекуррентные сети, арифметика и пулинг
RKNN2 V2.5.0 · RV1103B/RV1106B:Формы, срезы и транспонирование
RKNN2 V2.5.0 · RV1103B/RV1106B:Активации, нормализация и расширения
RKNN2 V2.5.0 · Поддержка и ограничения операторов CPU
RKNN2 V2.5.0 · Поддержка и ограничения операторов GPU
RKNN2 V2.5.0 · Ввод/вывод модели, выравнивание и ограничения свёрток
Ограничения входов и выходов модели
Ограничения входов модели
-
Эти ограничения выравнивания относятся только к API нулевого копирования, а не к обычным API.
-
Выравнивание входной ширины можно узнать через атрибут w_stride API нулевого копирования. Примечание: w_stride нельзя изменять.
-
Выравнивание требуется только для входной ширины (width) в зависимости от числа каналов (channel); прочих ограничений нет.
-
Если mean и scale не нужны, задайте mean=0 и scale=1.
-
Если channel>4, mean/scale используют для всех каналов только первые значения: mean[0] и scale[0].
-
Если первый слой имеет тип с плавающей точкой, операция quant отсутствует.
-
RV1106/RV1103/RV1103B не поддерживают операции mean/scale/quant на CPU.
-
Подробное использование см. в Rockchip_RKNPU_User_Guide_RKNN_SDK.
RK3566/RK3568

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RK3566/RK3568 | int8 | 4 | uint8 | NPU | 8 | 1 | A | Без ограничений |
| RK3566/RK3568 | int8 | 4 | int8 | NPU | 8 | 1 | A | Без ограничений |
| RK3566/RK3568 | int8 | 4 | float16 | CPU | 8 | 1 | A | Без ограничений |
| RK3566/RK3568 | int8 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 8 | 1 | A | Без ограничений |
| RK3566/RK3568 | float16 | 4 | uint8 | CPU | 4 | 1 | B | Без ограничений |
| RK3566/RK3568 | float16 | 4 | int8 | CPU | 4 | 1 | B | Без ограничений |
| RK3566/RK3568 | float16 | 4 | float16 | CPU | 4 | 1 | B | Без ограничений |
| RK3566/RK3568 | float16 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 4 | 1 | B | Без ограничений |
| RK3566/RK3568 | Без ограничений | Не 4-мерный | Без ограничений | CPU | 1 | 1 | Без ограничений | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h < 1024 * N |
| A (2) | width <= 4096 |
| A / Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 128) |
| A / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| A / ConvTranspose/Deconvolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 128) |
| Условие | Формула |
|---|---|
| B (1) | width * dilation_kernel_h < 1024 * N |
| B (2) | width <= 4096 |
| B / Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 128) |
| B / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| B / ConvTranspose/Deconvolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 128) |
RK3588

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RK3588 | int8 | 4 | uint8 | NPU | 16 | 1 | A | Без ограничений |
| RK3588 | int8 | 4 | int8 | NPU | 16 | 1 | A | Без ограничений |
| RK3588 | int8 | 4 | float16 | CPU | 16 | 1 | A | Без ограничений |
| RK3588 | int8 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 16 | 1 | A | Без ограничений |
| RK3588 | float16 | 4 | uint8 | CPU | 8 | 1 | B | Без ограничений |
| RK3588 | float16 | 4 | int8 | CPU | 8 | 1 | B | Без ограничений |
| RK3588 | float16 | 4 | float16 | CPU | 8 | 1 | B | Без ограничений |
| RK3588 | float16 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 8 | 1 | B | Без ограничений |
| RK3588 | Без ограничений | Не 4-мерный | Без ограничений | CPU | 1 | 1 | Без ограничений | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h <= 2048 * N |
| A (2) | width <= 8192 |
| A / Convolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 3) |
| A / Depthwise Convolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 2048), 3) |
| A / ConvTranspose/Deconvolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 3) |
| Условие | Формула |
|---|---|
| B (1) | width * dilation_kernel_h <= 1024 * N |
| B (2) | width <= 8192 |
| B / Convolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 3) |
| B / Depthwise Convolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 2048), 3) |
| B / ConvTranspose/Deconvolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 3) |
RV1103/RV1106

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RV1103/RV1106 | int8 | 4 | uint8 | NPU | 16 | 1 | A | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h <= 2048 * N |
| A (2) | width <= 4096 |
| A / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| A / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| A / ConvTranspose/Deconvolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
Заголовок рисунка ссылается на примечание 9, но предоставленное описание входов содержит только 1–8. Примечание 9 не найдено и не дополняется догадками.
RK3562

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RK3562 | int8 | 4 | uint8 | NPU | 16 | 1 | A | Без ограничений |
| RK3562 | int8 | 4 | int8 | NPU | 16 | 1 | A | Без ограничений |
| RK3562 | int8 | 4 | float16 | CPU | 16 | 1 | A | Без ограничений |
| RK3562 | int8 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 16 | 1 | A | Без ограничений |
| RK3562 | float16 | 4 | uint8 | CPU | 8 | 1 | B | Без ограничений |
| RK3562 | float16 | 4 | int8 | CPU | 8 | 1 | B | Без ограничений |
| RK3562 | float16 | 4 | float16 | CPU | 8 | 1 | B | Без ограничений |
| RK3562 | float16 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 8 | 1 | B | Без ограничений |
| RK3562 | Без ограничений | Не 4-мерный | Без ограничений | CPU | 1 | 1 | Без ограничений | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h <= 2048 * N |
| A (2) | width <= 4096 |
| A / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| A / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| A / ConvTranspose/Deconvolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| Условие | Формула |
|---|---|
| B (1) | width * dilation_kernel_h <= 2048 * N |
| B (2) | width <= 4096 |
| B / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| B / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| B / ConvTranspose/Deconvolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
RK3576/RV1126B

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RK3576/RV1126B | int8 | 4 | uint8 | NPU | 16 | 1 | A | Без ограничений |
| RK3576/RV1126B | int8 | 4 | int8 | NPU | 16 | 1 | A | Без ограничений |
| RK3576/RV1126B | int8 | 4 | float16 | CPU | 16 | 1 | A | Без ограничений |
| RK3576/RV1126B | int8 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 16 | 1 | A | Без ограничений |
| RK3576/RV1126B | float16 | 4 | uint8 | CPU | 8 | 1 | B | Без ограничений |
| RK3576/RV1126B | float16 | 4 | int8 | CPU | 8 | 1 | B | Без ограничений |
| RK3576/RV1126B | float16 | 4 | float16 | CPU | 8 | 1 | B | Без ограничений |
| RK3576/RV1126B | float16 | 4 | Прочие типы (выравнивание входа может измениться) | CPU | 8 | 1 | B | Без ограничений |
| RK3576/RV1126B | Без ограничений | Не 4-мерный | Без ограничений | CPU | 1 | 1 | Без ограничений | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h <= 2048 * N |
| A (2) | width <= 4096 |
| A / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| A / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 2048) |
| A / ConvTranspose/Deconvolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| Условие | Формула |
|---|---|
| B (1) | width * dilation_kernel_h <= 2048 * N |
| B (2) | width <= 4096 |
| B / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| B / Depthwise Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 2048), 3) |
| B / ConvTranspose/Deconvolution | N = 12 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
RK2118

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RK2118 | float16 | 4 | float16 | CPU | 4 | 1 | A | Без ограничений |
| RK2118 | float16 | Не 4-мерный | float16 | CPU | 1 | 1 | A | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h <= 2048 * N |
| A (2) | width <= 4096 |
| A / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| A / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| A / ConvTranspose/Deconvolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
RV1103B

Редактируемая транскрипция оригинала (объединённые ячейки развёрнуты):
| Платформа | Точность первого слоя | Размерность входа | Заданный тип входа первого слоя | Исполнитель mean/scale/quant | Выравнивание width (элементы), channel=1,3,4 | Выравнивание width (элементы), channel≠1,3,4 | Ограничения width, channel=1,3,4 | Ограничения width, channel≠1,3,4 |
|---|---|---|---|---|---|---|---|---|
| RV1103B/RV1106B | int8 | 4 | uint8 | NPU | 8 | 1 | A | Без ограничений |
| RV1103B/RV1106B | int8 | 4 | int8 | NPU | 8 | 1 | A | Без ограничений |
Для каждого типа свёртки width/kernel_h/kernel_w должны удовлетворять обоим условиям ниже. N — целое число от 1 до 7; свёртки вне диапазона не поддерживаются. Формулы N приведены ниже. Написание dilation_kernel_h/w на рисунке отличается от dilated_kernel_h/w в последней главе; сохранён вариант рисунка.
| Условие | Формула |
|---|---|
| A (1) | width * dilation_kernel_h <= 2048 * N |
| A (2) | width <= 4096 |
| A / Convolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
| A / Depthwise Convolution | N = 8 - CEIL((dilation_kernel_h * dilation_kernel_w) / 4096) |
| A / ConvTranspose/Deconvolution | N = 8 - MAX(CEIL((dilation_kernel_h * dilation_kernel_w) / 128), 2) |
Заголовок рисунка ссылается на примечание 9, но предоставленное описание входов содержит только 1–8. Примечание 9 не найдено и не дополняется догадками.
Ограничения выходов модели
-
Для выходного тензора NHWC требуется выравнивание, если преобразование выхода выполняет NPU; при реализации на CPU выравнивание не требуется.
-
Точность выхода int8/float16 означает исходный тип данных выхода последнего слоя модели.
-
Для выхода NCHW, реализованного на NPU через интерфейс нулевого копирования, размер выделяемой выходной памяти определяется полученным через query значением size.
-
Для выхода NC1HWC2 размер выделяемой выходной памяти определяется полученным через query значением size.
RK3566/RK3568
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RK3566/RK3568 | int8 | 4 | NCHW | Нет | Нет |
| RK3566/RK3568 | int8 | 4 | NHWC | Кратно 8 | Нет |
| RK3566/RK3568 | int8 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 16; прочие операторы: кратно 8 | Кратно 4 |
| RK3566/RK3568 | int8 | 4 | UNDEFINE | Нет | Нет |
| RK3566/RK3568 | float16 | 4 | NCHW | Нет | Нет |
| RK3566/RK3568 | float16 | 4 | NHWC | Кратно 4 | Нет |
| RK3566/RK3568 | float16 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 8; прочие операторы: кратно 4 | Кратно 4 |
| RK3566/RK3568 | float16 | 4 | UNDEFINE | Нет | Нет |
| RK3566/RK3568 | Без ограничений | Не 4D | UNDEFINE | Нет | Нет |
RK3588
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RK3588 | int8 | 4 | NCHW | Нет | Нет |
| RK3588 | int8 | 4 | NHWC | Кратно 16 | Нет |
| RK3588 | int8 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 32; прочие операторы: кратно 16 | Кратно 4 |
| RK3588 | int8 | 4 | UNDEFINE | Нет | Нет |
| RK3588 | float16 | 4 | NCHW | Нет | Нет |
| RK3588 | float16 | 4 | NHWC | Кратно 8 | Нет |
| RK3588 | float16 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 16; прочие операторы: кратно 8 | Кратно 4 |
| RK3588 | float16 | 4 | UNDEFINE | Нет | Нет |
| RK3588 | Без ограничений | Не 4D | UNDEFINE | Нет | Нет |
RV1103/RV1106
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RV1103/RV1106 | int8 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 32; прочие операторы: кратно 16 | Кратно 4 |
| RV1103/RV1106 | int8 | 4 | NHWC | Нет | Нет |
RK3562
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RK3562 | int8 | 4 | NCHW | Нет | Нет |
| RK3562 | int8 | 4 | NHWC | Нет | Нет |
| RK3562 | int8 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 32; прочие операторы: кратно 16 | Кратно 4 |
| RK3562 | int8 | 4 | UNDEFINE | Нет | Нет |
| RK3562 | float16 | 4 | NCHW | Нет | Нет |
| RK3562 | float16 | 4 | NHWC | Нет | Нет |
| RK3562 | float16 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 16; прочие операторы: кратно 8 | Кратно 4 |
| RK3562 | float16 | 4 | UNDEFINE | Нет | Нет |
| RK3562 | Без ограничений | Не 4D | UNDEFINE | Нет | Нет |
RK3576/RV1126B
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RK3576/RV1126B | int8 | 4 | NCHW | Нет | Нет |
| RK3576/RV1126B | int8 | 4 | NHWC | Нет | Нет |
| RK3576/RV1126B | int8 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 32; прочие операторы: кратно 16 | Кратно 4 |
| RK3576/RV1126B | int8 | 4 | UNDEFINE | Нет | Нет |
| RK3576/RV1126B | float16 | 4 | NCHW | Нет | Нет |
| RK3576/RV1126B | float16 | 4 | NHWC | Нет | Нет |
| RK3576/RV1126B | float16 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 16; прочие операторы: кратно 8 | Кратно 4 |
| RK3576/RV1126B | float16 | 4 | UNDEFINE | Нет | Нет |
| RK3576/RV1126B | Без ограничений | Не 4D | UNDEFINE | Нет | Нет |
RK2118
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RK2118 | float16 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 8; прочие операторы: кратно 4 | Кратно 4 |
| RK2118 | float16 | 4 | NHWC | Нет | Нет |
| RK2118 | float16 | Не 4D | UNDEFINE | Нет | Нет |
RV1103B/RV1106B
| Платформа | Точность выхода модели | Размерность выхода | Выходной layout | Выравнивание channel | Выравнивание H*W |
|---|---|---|---|---|---|
| RV1103B/RV1106B | int8 | 4 | NC1HWC2 | Последний слой — свёртка: кратно 8; прочие операторы: кратно 8 | Кратно 4 |
| RV1103B/RV1106B | int8 | 4 | NHWC | Нет | Нет |
Особые пояснения
dilated_kernel_h
dilated_kernel_h = kernel_h * dilations_h - dilations_h + 1
dilated_kernel_w
dilated_kernel_w = kernel_w * dilations_w - dilations_w + 1
