Организация HSA Foundation, учреждённая компаниями AMD, ARM, Samsung, Qualcomm, Texas Instruments, Imagination и MediaTek, представила спецификацию HSA 1.0 (Heterogenous System Architecture), определяющую архитектуру, набор runtime-компонентов и программные интерфейсы гетерогенных вычислительных систем.
Архитектура HSA определяет работу оборудования. Программные интерфейсы предназначены для разработчиков ПО, инструментариев и компиляторов. Спецификация на runtime, определяет как приложения должны взаимодействовать с платформами HSA. HSA - это технология, позволяющая выполнять гетерогенные (CPU + GPU\FPU) вычисления прозрачно для пользователя.
В основе HSA лежит специальный промежуточный язык HSAIL (Heterogeneous System Architecture Intermediate Language) и виртуальная машина, обеспечивающая его трансляцию в машинный код, специфичный для разного оборудования. Компоненты для использования HSA реализованы для различных высокоуровневых языков программирования, в том числе для C++, Java и Python. HSA позиционируется как единая оптимизированная платформа, поверх которой может функционировать OpenCL и OpenMP.
Особенностью HSA является то, что CPU и GPU имеют доступ к единым областям памяти, что упрощает организацию работы гибридных приложений и минимизирует число операций по копированию памяти. Основным достоинством гетерогенных вычислений является в разы более высокая производительность по сравнению с традиционными вычислениями на CPU, благодаря мощности современных видеочипов. Напомним, данная технология интегрирована в LibreOffice и может уже сейчас использоваться на AMD APU поколения Kaveri.