Altifigence Academy

17 / 24 · Теория

PE, поток данных и повторное использование MAC

Отобразите P=3,M=2,K=8 на четыре PE с неподвижным выходом. Каковы такты MAC и полезная загрузка мест MAC без записей?

Решите, что остаётся рядом

PE — обрабатывающий элемент с умножением, накоплением и малым локальным состоянием. Больше PE увеличивает возможную параллельность лишь тогда, когда к ним могут поступать операнды и частичные суммы. Поток данных отображает оси циклов на время и позиции PE и выбирает локальные значения. Одинаковое число MAC может требовать очень разных перемещений.

Неподвижный выход удерживает выходную частичную сумму локально, подавая операнды. Неподвижные веса сохраняют веса между входами и перемещают или объединяют частичные суммы. Неподвижный вход сохраняет входные значения для повторного использования с весами. Каждое название определяет сокращаемое перемещение; оно не устраняет все остальные передачи. Описывайте реальные пути при сочетании стратегий повторного использования.

Разобранное отображение с неподвижным выходом

P=4 пространственные позиции,M=2 выходных канала,K=9 членов свёртки дают восемь выходов и 72 MAC. Четыре PE владеют по одному выходу и выполняют один член за такт. Первые четыре выхода занимают девять тактов, следующие четыре — ещё девять: восемнадцать тактов MAC. Добавьте один одновременный такт записи результатов после каждой группы без перекрытия, получая двадцать тактов всего. Места MAC полностью используются, но загрузка полной операции включает запись.

Разместите два выходных канала одного окна на разных PE и широковещательно подайте общий вход. Чтение девятиотсчётного окна отдельно для обоих каналов требует восемнадцати чтений на границе подачи; однократное чтение и совместное использование — девять. Это не считает локальные чтения PE или повторное использование между соседними окнами. Задавайте границу подсчёта трафика.

Храните только столько частичных сумм, сколько позволяет локальная память. Семь выходов на четырёх PE оставляют один PE неиспользуемым во второй группе. Маска достоверности должна подавить ложный результат, а загрузка — учитывать полезные MAC.

Перемещение частичных сумм может требовать более широких передач, чем перемещение операндов int8. Записывайте ширину и числа чтений/записей каждого класса значений. Перестановка точных целочисленных сумм сохраняет результат, но промежуточное ограничение может нарушить эквивалентность. Проект Eyeriss MIT — первичный пример проектирования ускорителя с учётом повторного использования. Числа PE и расписания здесь — отдельные гипотетические учебные примеры.

Попробуйте сами

Отобразите P=3,M=2,K=8 на четыре PE с неподвижным выходом. Каковы такты MAC и полезная загрузка мест MAC без записей?

Прочитать объяснение

Шесть выходов требуют двух групп и шестнадцати тактов MAC. Имеется 64 места PE-тактов и 48 полезных MAC, то есть 75%.

Выбор действует в этом браузере. Его можно изменить внизу страницы.