Intel представила oneAPI — единую унифицированную модель программирования
Intel в рамках конференции SC19 представила oneAPI — единую унифицированную модель программирования, которая должна упростить разработку программного обеспечения, работающего сразу с несколькими архитектурами.
Intel создала бесплатную, открытую и стандартизированную альтернативу NVIDIA CUDA и подобным проприетарным решениям, которая позволяет легко адаптировать ПО под другие архитектуры и оборудование, будь то центральные или графические процессоры, ПЛИС или ускорители. Причём oneAPI не привязан к оборудованию Intel и способен работать на самых разных устройствах.
Как отмечает Intel, инициатива кросс-архитектурной модели разработки oneAPI основана на отраслевых стандартах и открытой спецификации, что должно обеспечить широкое внедрение и распространение. Спецификация oneAPI включает в себя язык прямого программирования Data Parallel C++ (расширение Khronos SYCL), мощные API, готовые библиотеки и инструменты разработки.
Однако в инициативе oneAPI компания Intel не ставит задачу создать какой-то универсальный код для всех платформ. Вместо этого предполагается, что за счёт oneAPI при переносе ПО с одной архитектуры на другую можно будет адаптировать лишь части кода, не меняя всё остальное.
Бета-версия программного обеспечения oneAPI, также представленная Intel, предоставляет разработчикам полный набор инструментов для разработки, включающий компиляторы на базе LLVM, готовые библиотеки и отладчики, собранные в специальные наборы инструментов (Toolkit), предназначенные для тех или иных областей применения. Ещё Intel выпустит множество обучающих материалов по oneAPI и готова оказывать разработчикам помощь в адаптации их кода под oneAPI.
Ещё Intel предоставляет разработчикам возможность тестирования программного обеспечения в процессе адаптации его под oneAPI. Для этого был создан сервис DevCloud, который позволяет тестировать ПО на различных актуальных архитектурах Intel, включая как серверные процессоры Xeon Scalable, так и настольные Core (для тестирования ПО на встроенных GPU), а также FPGA Arria и Stratix.
Первая бета-версия oneAPI как раз и предназначена для серверных процессоров Intel Xeon Scalable, потребительских процессоров Intel Core с интегрированной графикой и программируемых матриц Intel FPGA. С выходом новых версий модели набор поддерживаемого аппаратного обеспечения будет расширяться.
Инициативу Intel oneAPI уже поддержало довольно много компаний и университетов. В том числе: Lenovo, AtoS, Cray, HPE, Tencent, Стокгольмский университет и многие другие.