Опубликована спецификация гетерогенных вычислительных систем HSA 1.0
HSA позволяет наладить совместную работу CPU, GPU и различных DSP-процессоров, и организовать гибридные вычисления, в которых подходящее вычислительное устройство выбирается в прозрачном режиме в зависимости от задачи. HSA позиционируется как единая оптимизированная платформа, поверх которой может функционировать OpenCL и OpenMP. Особенностью HSA является то, что CPU и GPU имеют доступ к единым областям памяти, что упрощает организацию работы гибридных приложений и минимизирует число операций по копированию памяти. Например, GPU и CPU могут напрямую работать с общим блоком памяти приложения по аналогии с работой с памятью в многопоточных программах. Спецификации охватывают также методы отображения виртуальной памяти, обеспечения когерентности памяти и передачи сообщений.
В основе HSA лежит специальный промежуточный язык HSAIL (Heterogeneous System Architecture Intermediate Language) и финализатор, обеспечивающий его трансляцию в машинный код, специфичный для разного оборудования. Финализатор может может использоваться как для статической компиляции HSAIL во время сборки приложения, так и в процессе выполнения или загрузки приложения. Компоненты для использования HSA реализованы для различных высокоуровневых языков программирования, в том числе для С, C++, Java и Python.
Связанные с платформой наработки, в том числе симулятор набора инструкций HSAIL, эталонный runtime и runtime для APU AMD, основанный на LLVM компилятор в HSAIL, компилятор OpenCL в HSAIL, инструментарий для разбора, ассемблирования и дизасемблирования HSAIL опубликованы под свободными лицензиями на GitHub. Драйвер "AMD KFD", предоставляющий интерфейс HSA для использования вычислительных возможностей графических процессоров и APU AMD, уже включен в состав ядра Linux 3.19.
Источник: http://www.opennet.ru/opennews/art.shtml?num=41864
|
0 | Tweet | Нравится |
|