Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемВсеволод Лазлов
1 Применение конвертируемых режимов адресации для повышения производительности сопроцессоров цифровой обработки сигналов в составе многоядерной СнК Пантелеев Алексей Юрьевич Шагурин Игорь Иванович Национальный исследовательский ядерный университет «МИФИ»
2 DSP-процессоры поддерживают специальные режимы адресации – Пост-инкремент (обработка массивов данных) – Адресация по модулю (кольцевой буфер) Такие режимы повышают производительность В векторных процессорах не используются – Вектора заменяют циклы и пост-инкремент – Простые режимы адресации: С заданным шагом: VecA[N] = Mem[Base + N * Step] Косвенная векторная: VecA[N] = Mem[VecB[N]] Введение 2
3 Простое БПФ по основанию 2: – Бит-реверсная перестановка отсчетов – Транспонирование в пространстве {0,1} N БПФ как двумерное разложение: – Бит-реверсная перестановка векторов – Транспонирование двумерной матрицы Свертка и корреляция: – Адресация векторов по некратному смещению Адресация в алгоритмах DSP 3
4 Формы доступа к данным в алгоритмах DSP плохо согласуются с тем, что поддерживается векторными процессорами: – Быстрое транспонирование требует поддержки косвенной векторной адресации либо произвольной перестановки данных в регистрах – Свертка требует загрузки векторных регистров на каждой итерации алгоритма – Вычисление векторов адресов требует дополнительных ресурсов процессора Проблема 4
5 Векторная память с несколькими банками – Число банков соответствует числу вычислительных конвейеров – По аналогии с разделяемой памятью в CUDA/OpenCL Один запрос, разные адреса для банков – Реализуются различные режимы доступа – Адреса генерируются аппаратно в соответствии с режимом и настройками – нет необходимости тратить на это инструкции – Конфликты банков невозможны Решение 5
6 Схема блока памяти 6
7 Инструкции работают с векторами из чисел Переменная длина вектора – От 1 до 256 векторных элементов – Векторный элемент – «квант» доступа в память Вектора называются «регистрами» и находятся в «сегментах» – Регистры размещаются в векторной памяти – Сегмент – независимая область памяти – В инструкциях указывается сегмент и регистр («C12») – Каждый сегмент имеет свой режим адресации Программная модель 7
8 5 режимов адресации: – Простой – Скалярный – Сверточный – Матричный прямой – Матричный транспонированный Переключение режима меняет представление данных – Не все режимы совместимы друг с другом Режимы адресации 8
9 Первая группа: простой, сверточный, скалярный – Загрузка и выгрузка – только в простом – Скалярный – только для чтения Вторая группа: матричные режимы – Загрузка и выгрузка – в любом из двух режимов – Размер матрицы – N * 2 k, измерения независимы – «Бесплатное» транспонирование матриц Режимы адресации 9
10 10
11 Размещение матриц в памяти 11 Прямой матричный режим
12 Размещение матриц в памяти 12 Транспонированный матричный режим
13 Реализация БПФ 13 Схема алгоритма для БПФ-16
14 БПФ в потоковом режиме 14 Представлены времена для БПФ-1024 на ВКС с 8 конвейерами
15 Производительность БПФ 15 При обработке БПФ на сопроцессорах с большим количеством параллельных вычислительных устройств производительность может быть ограничена передачей данных. Применение конвертируемых режимов адресации снижает объем передаваемых данных.
16 Сравнение производительности БПФ 16 Млн. отсчетов в секунду, лог. масштаб
17 Предложена система векторной памяти с поддержкой конвертируемых режимов адресации данных Плюсы: – Реализуются типичные для DSP формы доступа – «Бесплатное» транспонирование матриц Минусы: – Все рабочие данные необходимо хранить в SRAM большого объема с малым количеством портов – Схемы генерации адресов удлиняют конвейер Заключение 17
18 Вопросы? Адрес для связи: Спасибо за внимание! 18
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.