Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л12. Видеоускорители.doc
Скачиваний:
20
Добавлен:
17.09.2019
Размер:
2.62 Mб
Скачать

Подсистема кэширования памяти. Пропускной способности и объёма памяти и кэшей никогда не бывает достаточно, и всегда есть необходимость и методы их увеличения.

В новых GPU компании AMD применяется полноценная двухуровневая кэш-память с возможностью чтения и записи. Каждый вычислительный блок имеет по 16 килобайт кэша первого уровня, а общий объём кэша второго уровня составляет 768 килобайт (всего в чипе получается 512 КБ L1 и 768 КБ L2), что на 50% больше, чем в предыдущем чипе, вовсе не имеющем возможности записи в L2-кэш.

Каждый вычислительный блок GCN за один такт может получить или записать по 64 байта данных из/в L1-кэш или глобальную память, которая служит для обмена данными между потоками команд. Столько же данных способен передавать и принимать каждый раздел кэш-памяти второго уровня L2. В результате, для топового GPU компании получается 2 терабайт/с для L1 и 700 ГБ/с для L2, что на 50% больше, чем у предыдущего топового решения AMD.

6.4. Графический процессор «Tahiti».

Процессор содержит 2 геометрических блока, 32 вычислительных блока архитектуры GCN, доступные на Radeon HD 7970, а в случае с младшим решением, некоторые из них будут отключены. Если считать пиковую вычислительную производительность решения, то она составляет почти 3,8 терафлопа, что является абсолютным рекордом для GPU на сегодняшний день.

Каждый блок GCN имеет в своём составе по 16 текстурных блоков, что даёт итоговую цифру в 128 блоков текстурирования (TMU) на чип, или более чем 118 гигатекселей/сек. Количество блоков ROP составляет 32 штуки в 8 укрупнённых блоках RBE. Ещё одно архитектурное изменение - теперь блоки ROP «прикреплены» не к каналам памяти, как это было ранее, а к блокам GCN.

Хотя теоретически скорость записи во фреймбуфер почти не изменилась, и максимально возможны те же 32 значений цвета и 128 значений глубины за такт, практическая скорость заполнения (филлрейт) в реальных применениях значительно возросла из-за увеличенной пропускной способности памяти. По измерениям AMD, Cayman обеспечивал запись лишь 23 пикселей за такт, в то время как новый Tahiti приблизился к теоретическим 32 пикселям за такт.

Это и понятно, ведь новый видеочип компании AMD имеет 384-битную шину памяти — шесть 64-битных каналов, точно как и текущее топовое решение конкурента. Именно это полуторакратное увеличение ПСП и даёт возможность повысить реальную скорость текстурных выборок и записи во фреймбуфер. Итоговая пропускная способность в 264 ГБ/сек должна помочь выжимать близкие к теоретическим показатели в 118 гигатекселей/сек и 30 гигапикселей/сек.

6.5. Неграфические вычисления.

С точки зрения гетерогенных и неграфических вычислительных задач весьма важны появившиеся два асинхронных вычислительных движка (Asynchronous Compute Engines — ACE). Они предназначены для планирования и распределения работы между исполнительными блоками для эффективной многозадачности и работают вместе с графическим командным процессором (Command Processor).

Radeon HD 7900 имеет два независимых вычислительных ядра и один графический. В сумме это даёт три программируемых блока и три потока команд, полностью отделённых друг от друга.

А в дополнение к асинхронной подаче команд для быстрого переключения контекста, новый GPU также имеет два двунаправленных контроллера прямого доступа к памяти (DMA), появившиеся в Cayman. Эти два контроллера необходимы для того, чтобы полностью использовать возможности новой шины PCI Express 3.0.

С точки зрения вычислений важна не только скорость выполнения операций с плавающей запятой с одинарной точностью, но и двойной (double precision floating point). На данный момент предполагается существование двух версий вычислительных блоков GCN, имеющих разный темп исполнения FP64 инструкций. Для старшего GPU темп выполнения составляет 1/4 от скорости FP32, а для младших чипов выбран темп 1/16, что вполне достаточно для сохранения совместимости, но не слишком усложняет недорогие решения. В итоге, Radeon HD 7970 способен на 947 миллиардов операций двойной точности в секунду - налицо очередное высочайшее достижение нового чипа AMD.

Во-первых, улучшена подсистема памяти и кэширования. Во-вторых, каждый вычислительный блок GCN имеет свой планировщик, что должно улучшить исполнение ветвящегося кода и общую эффективность. Ну и в третьих отметим скалярное исполнение, не требующее сложных оптимизаций от компилятора, в результате чего вычислительные блоки будут гораздо реже простаивать. И в итоге в любых задачах новому чипу будет легче показать высокую производительность и загрузку ALU.

Из других нововведений, связанных с вычислительными возможностями, отметим полную поддержку ECC для DRAM и SRAM. С программной стороны важно, что Tahiti - это первый графический процессор с полной поддержкой новых версий API: OpenCL 1.2, DirectCompute 11.1 и C++ AMP и их возможностей. Например, OpenCL 1.2 позволяет объединять возможности нескольких вычислительных устройств в одно, и компания AMD уже выпустила соответствующую поддержку в виде AMD APP SDK 2.6 и драйвера Catalyst 11.12.