Таксономия Дункана - это классификация компьютерных архитектур , предложенная Ральфом Дунканом в 1990 году. [1] Дункан предложил модификации таксономии Флинна [2] для включения конвейерных векторных процессов. [3]
Таксономия
Таксономия была разработана в 1988–1990 годах и впервые была опубликована в 1990 году. Ее исходные категории указаны ниже.
Синхронные архитектуры
В эту категорию входят все параллельные архитектуры, которые согласованно координируют параллельное выполнение и делают это с помощью таких механизмов, как глобальные часы, центральные блоки управления или контроллеры векторных блоков. Дальнейшее подразделение этой категории производится преимущественно на основе механизма синхронизации. [1]
Конвейерные векторные процессоры
Конвейерные векторные процессоры характеризуются конвейерными функциональными блоками, которые принимают последовательный поток элементов массива или вектора , так что разные этапы в заполненном конвейере обрабатывают разные элементы вектора в заданное время. [4] Параллельность обеспечивается как конвейерный в отдельных функциональных блоках , описанные выше, а также при работе несколько устройств такого рода параллельно и цепочки выхода одного блока в другой блок в качестве входных данных. [4]
Векторные архитектуры, которые передают векторные элементы в функциональные блоки из специальных векторных регистров, называются архитектурами регистр-регистр , а архитектуры, которые загружают функциональные блоки из специальных буферов памяти, обозначаются как архитектуры " память-память" . [1] Ранние примеры архитектур «регистр-регистр» 1960-х и начала 1970-х годов включают Cray-1 [5] и Fujitsu VP-200, а Control Data Corporation STAR-100 , CDC 205 и компьютер Texas Instruments Advanced Scientific Computer являются ранними примерами векторных архитектур типа память-память. [6]
В конце 1980-х и начале 1990-х годов были представлены векторные архитектуры, такие как Cray Y-MP / 4 и Nippon Electric Corporation SX-3, которые поддерживали 4-10 векторных процессоров с общей памятью (см. Архитектуру NEC SX ). RISC-V RVV может ознаменовать начало современного возрождения векторной обработки.
SIMD
В этой схеме используется категория SIMD (Single Instruction Stream, Multiple Data Stream) из Таксономии Флинна в качестве корневого класса для подклассов Processor Array и Associative Memory . Архитектуры SIMD [7] характеризуются тем, что блок управления передает общую команду всем элементам обработки, которые выполняют эту команду синхронно для различных операндов из локальных данных. Общие функции включают в себя способность отдельных процессоров отключать инструкцию и возможность распространять результаты выполнения инструкций на непосредственных соседей по сети межсоединений.
Массив процессора
Ассоциативная память
Систолический массив
Систолические массивы, предложенные в 1980-х годах [8], представляют собой мультипроцессоры, в которых данные и частичные результаты ритмично перекачиваются от процессора к процессору через обычную локальную сеть межсоединений. [1] Систолические архитектуры используют глобальные часы и явные временные задержки для синхронизации потока данных от процессора к процессору. [1] Каждый процессор в систолической системе выполняет инвариантную последовательность инструкций перед отправкой данных и результатов на соседние процессоры. [8]
Архитектуры MIMD
Основываясь на терминологии Флинна «Множественные инструкции - множественные потоки данных», эта категория охватывает широкий спектр архитектур, в которых процессоры выполняют множественные последовательности команд для (потенциально) разнородных потоков данных без строгой синхронизации. Хотя потоки инструкций и данных могут быть разными для каждого процессора, это не обязательно. Таким образом, архитектуры MIMD могут запускать идентичные программы, которые находятся на разных этапах в любой момент времени, запускать уникальные потоки инструкций и данных на каждом процессоре или выполнять комбинацию каждого из этих сценариев. Эта категория подразделяется в первую очередь на основе организации памяти. [1]
Распределенная память
Архитектура MIMD-парадигмы
Категория «Парадигмы на основе MIMD» включает системы, в которых конкретная парадигма программирования или выполнения является, по крайней мере, столь же фундаментальной для архитектурного проектирования, как и структурные соображения. Таким образом, разработка архитектур потоков данных и редукционных машин является как продуктом поддержки их отличительной парадигмы выполнения, так и продуктом соединения процессоров и памяти в стиле MIMD. Подразделения категорий определяются этими парадигмами. [1]
Гибрид MIMD / SIMD
Машина потока данных
Редукционная машина
Массив волнового фронта
Рекомендации
9. Ксавьер, С.С. Айенгар, Введение в параллельное программирование.
- ^ a b c d e f g Дункан, Ральф, "Обзор параллельных компьютерных архитектур", IEEE Computer. Февраль 1990 г., стр. 5–16.
- ^ Флинн, MJ, "Очень высокоскоростные вычислительные системы", Proc. IEEE. Vol. 54, 1966, с. 1901–1909.
- ^ Введение в параллельные алгоритмы
- ^ a b Hwang, K., ed., Tutorial Supercomputers: Design and Applications. Computer Society Press, Лос-Аламитос, Калифорния, 1984, особенно. главы 1 и 2.
- ^ Рассел, Р.М., "Компьютерная система CRAY-1", Comm. ACM, январь 1978 г., стр. 63-72.
- ^ Уотсон, WJ, ASC: высокомодульная гибкая суперкомпьютерная архитектура, Proc. Осенняя компьютерная конференция AFIPS, 1972, стр. 221-228.
- ^ Майкл Юрчик и Томас Шведерски, «Обработка SIMD: концепции и системы», стр. 649-679 в Справочнике по параллельным и распределенным вычислениям, изд. А. Зомая, McGraw-Hill, 1996.
- ^ a b Кунг, HT, "Почему систолические массивы?", Компьютер, Vol. 15, № 1, январь 1982 г., стр. 37-46.