Intel oneAPI Hochleistungs-Workloads für die Datenanalyse, KI/ML und HPC

Von Thomas Joos Lesedauer: 4 min

Anbieter zum Thema

Mit Intel OneAPI bietet der Prozessorgigant aus den USA Entwicklungswerkzeuge an, mit denen sich vor allem Hochleistungs-Apps entwickeln lassen, die auf verschiedenen Architekturen laufen. Im Fokus steht dabei die Entwicklung mit einer einzelnen Anwendungsschnittstelle.

Intel oneAPI ist ein offenes und freies Programmierkonzept von Intel.
Intel oneAPI ist ein offenes und freies Programmierkonzept von Intel.
(Bild: Intel)

Intel OneAPI ist ein offenes und freies Programmierkonzept von Intel. Im Grunde genommen handelt es sich bei Intel oneAPI um den Nachfolger von Parallel Studio, um neue Funktionen ergänzt. Intel oneAPI ist kein einzelnes Toolkit oder nur eine Programmiersprache, sondern eine Sammlung von Konzepten, Frameworks und Tools. Der Einstieg stellt das Intel oneAPI Base Toolkit dar, das für Windows, Linux und macOS zur Verfügung steht.

Der Prozessorhersteller will damit erreichen, dass Anwendungen mit maximaler Leistung auf verschiedenen Architekturen laufen. Davon profitieren zum Beispiel Lösungen zur Analyse von Daten, HPC oder im Bereich KI/ML, da hier eine maximale Leistung für den Betrieb erforderlich ist. Für die Entwicklung kommt die neue Programmiersprache DPC++ zum Einsatz. Es ist aber auch möglich, Intel oneAPI mit Python zu nutzen. Das ist vor allem für KI-Entwickler interessant, da diese häufig auf Python setzen.

Neue Programmiersprache soll mehr Geschwindigkeit bringen

Intel oneAPI ist für Big Data, Datenanalysen und natürlich für den KI/ML-Bereich aus verschiedenen Gründen interessant. Durch die Erweiterungsmöglichkeiten mit Toolkits kann Intel oneAPI noch mehr Flexibilität bieten. Es stehen Toolkits für HPC, IoT, DL Framework für KI/ML sowie zum Rendering zur Verfügung. Das HPC Toolkit lässt sich zum Beispiel parallel auch noch für Open Multi-Processing einsetzen. Dadurch lassen sich Anwendungen mit dem gleichen Code auch in diesen Umgebungen sehr viel flexibler nutzen, auch außerhalb von Intel oneAPI.

Intel oneAPI besteht aus einer Vielzahl an Frameworks für die Entwicklung von Hochleistungs-Apps im Bereich HPC und KI/ML.
Intel oneAPI besteht aus einer Vielzahl an Frameworks für die Entwicklung von Hochleistungs-Apps im Bereich HPC und KI/ML.
(Bild: T. Joos)

Intel oneAPI besteht aus einer Vielzahl an Frameworks für die Entwicklung von Hochleistungs-Apps im Bereich HPC und KI/ML. Neue Programmiersprache soll die Datenanalyse und KI-Anwendungen beschleunigen: DPC++

Zum Einsatz soll bei Intel oneAPI vor allem die neue, teilweise auf C++ basierte, Programmiersprache Data Parallel C++ (DPC++) kommen. DPC++ baut auf der offenen Programmiersprache SYCL der Khronos-Gruppe auf. SYCL sorgt in DPC++ für die Abstraktionsschicht einer einheitlichen Programmierung bei der Verwendung von unterschiedlichen Prozessoren. Die Funktionen aus C++ und die Intel-spezifischen Erweiterungen sorgen in DPC++ wiederum dafür, dass mit DPC++ entwickelte Apps über den notwendigen Umfang an Funktionen verfügen. Im Zusammenspiel von SYCL und C++ in DPC++ ist es wiederum möglich, dass Anwendungen auf verschiedenen CPUs laufen und ohne umfassende Änderungen auch auf GPUs funktionieren.

DPC++ ist eng mit OneAPI verknüpft, verfügt über spezifische Erweiterungen von Intel und ist daraufhin optimiert, Anwendungen entwickeln zu können, die auf verschiedenen Hardware-Plattformen mit maximaler Leistung laufen. Dabei soll es auch problemloser möglich sein, seinen eigenen Code zwischen verschiedenen CPUs, GPUs und FPGAs zu portieren und dabei gleichzeitig die jeweils maximale Leistung für die Architektur zu erreichen. Ein erster Einstieg gelingt zum Beispiel durch den kostenlosen Download der ersten 4 Kapitel des Buches „Data Parallel C++: Mastering DPC++ for Programming of Heterogeneous Systems Using C++ and SYCL“. Auch auf der Seite „Introduction to DPC++ Programming“ sind Informationen dazu zu finden, wie Entwickler und Datenwissenschaftler die Vorteile von Intel oneAPI für sich nutzbar machen können.

Kostenloser Einstieg in Intel oneAPI mit dem Base Toolkit
Kostenloser Einstieg in Intel oneAPI mit dem Base Toolkit
(Bild: T. Joos)

Kostenloser Einstieg in Intel oneAPI mit dem Base Toolkit

Für einen Einstieg in DPC++ stellt Intel das Intel OneAPI Base Toolkit zur Verfügung. Hier sind alle grundlegenden Funktionen enthalten, die sich aber jederzeit erweitern lassen. Darüber hinaus kann es sinnvoll sein, Mitglied der Intel DevCloud zu werden. Als Mitglied von Intel DevCloud können Entwickler eine kostenlose Entwicklungs-Sandbox herunterladen und haben zusätzlich noch Zugriff auf aktuelle Hardware von Intel sowie auf aktuelle Software aus dem Intel-oneAPI-Universum.

Die Vorteile von Intel oneAPI und DPC++

Der Vorteil einer einzelnen Anwendungsschnittstelle für verschiedene Architekturen besteht vor allem darin, dass Entwickler nicht mehr getrennte Codebasen für unterschiedliche Architekturen pflegen müssen. Intel oneAPI ermöglicht zum einen eine universelle Codebasis, die auf allen Architekturen läuft und bietet zusätzlich noch die Möglichkeit, spezifische Optimierungen für die einzelnen Architekturen mit möglichst wenig Aufwand zu integrieren.

Intel oneAPI besteht aus verschiedenen Komponenten, die sich auch getrennt voneinander einsetzen lassen.
Intel oneAPI besteht aus verschiedenen Komponenten, die sich auch getrennt voneinander einsetzen lassen.
(Bild: T. Joos)

Intel oneAPI besteht aus verschiedenen Komponenten, die sich auch getrennt voneinander einsetzen lassen.

Genau das ist der maßgebliche Nutzen von Intel oneAPI und DPC++. Es ist möglich Anwendungen bereitzustellen, deren Code auf einer Vielzahl von Architekturen läuft, der gleichzeitig aber für jede Architektur die spezifischen Optionen unterstützt, um die Leistung zu maximieren. Das kann für Big Data und der Datenanalyse generell sowie natürlich für KI/ML ein Gamechanger sein, da hier Anwendungen maximale Leistung benötigen, aber auch sehr portabel sein müssen.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Big Data, Analytics & AI

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Durch diese Möglichkeiten können Entwickler eigenen Code leichter wiederverwenden und sparen dadurch Zeit ein. Außerdem ist der Code länger nutzbar, da auch neue Versionen von Hardware sehr schnell unterstützt werden, ohne gleich den kompletten Code neu schreiben zu müssen. Mit einer einzelnen Programmiersprache lassen sich dadurch hocheffiziente Anwendungen für mehrere Plattformen entwickeln.

(ID:49227804)