OneAPI
oneAPI — открытый стандарт унифицированного прикладного программного интерфейса, предназначенный для использования на различных вычислительных ускорительных архитектурах, включающих графические процессоры, нейронные процессоры и программируемые пользователем вентильные матрицы. Стандарт предназначен для устранения необходимости поддержания разработчиками отдельных кодовых баз, множества программных языков, и различных инструментов и рабочих процессов для каждой архитектуры.

Спецификация oneAPI 
Спецификация oneAPI расширяет существующие модели программирования для разработчиков, позволяя использовать несколько аппаратных архитектур с помощью языка параллельных данных, набора библиотек API и низкоуровневого аппаратного интерфейса для поддержки межархитектурного программирования. Она построена на существующих промышленных стандартах и предоставляет открытый, кроссплатформенный стэк разработки.

Data Parallel C++ 
DPC++ — открытый, кросс-архитектурный язык, созданный на базе языка C++ и SYCL стандартах промышленного консорциума Khronos Group. DPC++ — имплементация стандарта SYCL с расширениями, предложенными для включения в будущие версии SYCL стандарта. Одним из примеров такого включения, является внесение использования унифицированной общей памяти, групповых алгоритмов и подгрупп в стандарт SYCL 2020.

Библиотеки oneAPI 

Набор API охватывает несколько областей, в которых заметно преимущество от использования ускорения, включая библиотеки для линейной алгебры, глубокого обучения, машинного обучения, обработки видео, а также других областей.
 

Исходный код большинства реализаций выше указанных библиотек доступен на сайте GitHub.

В документации oneAPI также указан API "Нулевого уровня", определяющий низкоуровневые интерфейсы прямого доступа к железу и набор компонентов для трассировки лучей с собственными API интерфейсами.

Уровень абстракции аппаратного обеспечения 
oneAPI Level Zero, — низкоуровневый аппаратный интерфейс, определяющий набор возможностей и служб, которые необходимы аппаратному ускорителю для взаимодействия со средами исполнения компилятора и другими инструментами разработчика.

Реализация 
Компания Intel выпустила наборы инструментов oneAPI производственного качества, которые реализуют данную спецификацию и добавила миграцию кода CUDA, а также инструменты для анализа и отладки. В состав этих инструментов входит Intel oneAPI DPC++/C++ Compiler, Intel Fortran Compiler, Intel VTune Профайлер и множество производительных библиотек.

Компания Codeplay выпустила слой с открытым исходным кодом, позволяющий библиотеке oneAPI SYCL/DPC++ работать на графических процессорах Nvidia с использованием CUDA.

Гейдельбергский университет разработал реализацию SYCL/DPC++ для графических процессоров AMD и Nvidia.

Компания Huawei выпустила DPC++ компилятор для своего чипсета Ascend AI.

Компания Fujitsu создала ARM версию библиотеки глубокой нейронной сети oneAPI (Deep Neural Network Library (oneDNN)) с открытым исходным кодом для процессора, использующегося в суперкомпьютере  Fugaku.

Примечания

Ссылки 
 
 Intel oneAPI Product
 Bringing Nvidia GPU support to SYCL developers
 
 

API
Кроссплатформенное программное обеспечение