Intel corporate blog
High performance
Programming
4 July

Intel oneAPI Project: архитектур много, API один



На проходившем в июне Intel Software Technology Day ведущие инженеры компании рассказали о софтверном проекте под названием «Intel oneAPI» — унифицированной модели программирования для облегчения разработки ПО под разнообразные вычислительные архитектуры, включающей в себя новый язык программирования. В этом посте мы приведем краткое описание данного проекта — как говорится, to be continued…

oneAPI — это проект, в рамках которого разрабатывается унифицированный набор средств для разработчиков производительного ПО. Парк вычислительных платформ в последнее время сильно расширился за счет специализированных ускорителей. Intel предоставит программные решения, которые позволят разработчикам выжать из разнородного железа максимум производительности.
Билл Сэвэдж, вице-президент Intel, генеральный директор подразделения Compute Performance Developer Products

Как мы замечаем, задачи, которыми мы нагружаем доступные нам вычислительные мощности, становятся более разнообразными — так же как и архитектуры этих самых мощностей, разделяющиеся на Скалярные (CPU), Векторные (GPU), Матричные (AI accelerators) и Пространственные (FPGA). Весь этот комплекс архитектур, называемый в Intel СВМП (SVMS), требует эффективную модель программирования для получения максимальной производительности. Задача oneAPI — обеспечить простоту использования и эффективность, избавляя от необходимости вести архитектуро-зависимые варианты кода, использовать для них разные языки программирования и средства разработки.

Примером того, как Intel уже сейчас реализует кросс-платформенность разработки, является Intel OpenVINO — набор средств для разработчика ПО, обеспечивающий последовательный, оптимизированный процесс инференса для deep learning алгоритмов на базе любых СВМП архитектур Intel.

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

  • Прямое программирование. oneAPI содержит новый язык программирования Data Parallel C++ (DPC++) — открытую, всеобъемлющую альтернативу проприетарным языкам под конкретные архитектуры. DPC++ обеспечивает удобство и производительность, используя привычную для разработчиков модель программирования. DPC++ создан на базе C++, включает в себя SYCL от The Khronos Group, а также расширения, разработанные в открытом сообществе.
  • API программирование. Библиотеки oneAPI позволяют развернуть несколько доменов нагрузки, для которых возможно провести оптимизацию. Функции библиотек кастомизированы под конкретные архитектуры.

Кроме того, Intel предоставит улучшенные версии средств анализа и отладки (Intel VTune Amplifier, Intel Advisor), поддерживающие DPC++ и весь набор архитектур СВМП.

Бета-версия oneAPI для разработчиков, а также дополнительные детали, его касающиеся, будут доступны в конце 2019 года.

+12
3.5k 16
Comments 4