1.2 Обзор оборудования для устройств южных островов.
Главное устройство OpenCL содержит вычислительные единицы (Cus), каждая из которых имеет суб-модули, которые в конечном счете состоят из ALUs. Рабочий элемент (или экземпляр ядра SPMD) содержится в ALU, как показано на рисунке 1.1.
Рисунок 1.1 - обобщенная структура вычислительных устройств AMD GPU для Южных устройств
Для устройств AMD Radeon HD 79XX каждый из 32 Compute Unit имеет один скалярный блок + четыре векторные единицы, каждая из которых содержит массив из 16 Processing Element. В свою очередь, каждый Processing Element состоит из одного Алу(арифметико-логического устройства). На рисунке 1.2 показаны только две вычислительные единицы массива, из которых состоит вычислительное устройство семейства AMD Radeon HD 7XXX. Четверка векторных единиц измерения используют SIMD(SIMD (англ. single instruction, multiple data — одиночный поток команд, множественный поток данных, ОКМД) — принцип компьютерных вычислений, позволяющий обеспечить параллелизм на уровне данных. Один из классов вычислительных систем в классификации Флинна.
SIMD-компьютеры состоят из одного командного процессора (управляющего модуля), называемого контроллером, и нескольких модулей обработки данных, называемых процессорными элементами. Управляющий модуль принимает, анализирует и выполняет команды. Если в команде встречаются данные, контроллер рассылает на все процессорные элементы команду, и эта команда выполняется на нескольких или на всех процессорных элементах. Каждый процессорный элемент имеет свою собственную память для хранения данных. Одним из преимуществ данной архитектуры считается то, что в этом случае более эффективно реализована логика вычислений. До половины логических инструкций обычного процессора связано с управлением выполнением машинных команд, а остальная их часть относится к работе с внутренней памятью процессора и выполнению арифметических операций. В SIMD-компьютере управление выполняется контроллером, а «арифметика» отдана процессорным элементам.