Produkte

Architekturübergreifendes Programmiermodell für CPUs und Beschleuniger

oneAPI ist da

von Edmund Preiss
 

 
Mit oneAPI hat ein branchenübergreifendes Konsortium unter Beteiligung von Intel Ende 2018 ein einheitliches, architekturübergreifendes Programmiermodell für CPUs und Beschleunigerarchitekturen angekündigt. Die Version 1.0 der Spezifikation des Modells, die am 28. September 2020 veröffentlicht wurde, setzt voll und ganz auf Industriestandards und ein offenes Entwicklungskonzept.

oneAPI ist nicht nur ein neues standardisiertes Konzept mit eigenen Entwicklungsprodukten, sondern auch die Vision einer stark vereinfachten Anwendungsentwicklung. Nötig wurde oneAPI zum einen, weil die Rechnerleistung der Supercomputer in Exascale-Dimensionen wächst, also Rechenleistung praktisch ohne Limit zur Verfügung steht und völlig neuartige IT-Anwendungen möglich sind. Zum anderen werden spezialisierte Beschleuniger immer populärer, weil sie bestimmte Aufgaben viel schneller erledigen können, zum Beispiel komplizierte Matrizenberechnungen oder die Verarbeitung von Echtzeitdaten in Form von Videos oder Messergebnissen. Weil keine einzelne Architektur für jeden Typ von Workload optimal geeignet ist, können innovative Applikationen nur dank der Vielfalt von CPUs, GPUs, FPGAs und anderen Beschleunigern eine gute Performance erreichen.

Diese Trends rund um innovative Workloads und neue Rechnerarchitekturen soll oneAPI unter einen Hut bringen – also die Softwareentwicklung für Hochleistungsrechner beschleunigen, über mehrere Rechnerarchitekturen hinweg gute Performance für unterschiedlichste Workloads garantieren und Best Practices für die effiziente und variable Programmierung unterschiedlicher Architekturen liefern.

Kern der Initiative ist eine offene Spezifikation, die eine einzige Software-Abstraktion über verschiedene Rechnerarchitekturen hinweg beschreibt. Intel hat diese Software-Abstraktion bereits implementiert und am 11. November 2020 in Form von Intel oneAPI veröffentlicht. Diese Implementierung baut auf dem bewährten Intel Parallel Studio auf; hinzu kommen die offene Programmiersprache Data Parallel C++ und eine Reihe von Bibliotheken für parallele Anwendungen, etwa in den Bereichen KI und Deep Learning, Supercomputing, IoT oder Rendering.

In diesem AI Trendletter wollen wir einen ersten Überblick über das neue Software- und Programmiermodell oneAPI vermitteln. Dabei geht es im Folgenden nicht um die technischen Details, sondern vor allem um die praktische Anwendung von oneAPI und das rasch wachsende Ökosystem.


Edmund Preiss

ist Business-Development-Manager Europe für Software-Tools bei Intel. Zu diesen Tools gehören z.B. Compiler, KI-Frameworks und Bibliotheken für Anwendungen in den Bereichen F&E, HPC, Fertigung, Automotive und Machine/Deep Learning.

Bildnachweise

Intel