The Intel® oneAPI Rendering Toolkit is a set of open source libraries that enables creation of high-performance, highfidelity, extensible, and cost-effective visualization applications and solutions. Its libraries provide rendering kernels and middleware for Intel® platforms for maximum flexibility, performance, and technical transparency. The toolkit supports Intel® XPU platforms (CPU and future Xe architectures), and includes:
- Intel® Embree
- Intel® OSPRay
- Intel® Open Image Denoise
- Intel® Volume Kernel Library
- Intel® OpenSWR
Intel® oneAPI
Basierend auf dem Gedanken "ein Quellcode für verschiedene Systeme" liefert Intel Werkzeuge zur Produktion hochperformanter Programme für verschiedene Prozessorarchitekturen.
Dies können CPUs, GPUs, FPGAs und weitere Prozessorsysteme ("Accelerators") sein. Zur Programmierung dieser XPUs (verallgemeinernde Abkürzung) liefert Intel ein auf Data Parallel C++ (DPC++) basierendes Compilersystem und passende Bibliotheken (oneAPI Libraries). DPC++ ist eine Weiterentwicklung von C++. Zusätzlich werden Analyse-Werkzeuge und Debugger bereitgestellt, die der Arbeitserleichterung, Fehlerfindung und Performanceverbesserung dienen.
Maschinencode vs. Bytecode
Im Gegensatz zu den bisherigen Möglichkeiten zur plattformübergreifenden Programmierung, die in den meisten Fällen auf Skripten (z.B. PHP, JavaScript) oder Zwischencode (sog. Bytecode; z.B. Java, C#) basieren und zur Ausführung eine Runtime-Umgebung oder Interpreter benötigen, erzeugt DPC++ compilierten, prozessorspezifischen Maschinencode, der keine Umsetzung von Script- oder Bytecode in Maschinencode während seiner Ausführung benötigt. Daß dies einen erheblichen Performancevorteil bietet, ist offensichtlich. Darüberhinaus ist Intels DPC++ Compilersystem mit prozessorspezifischen Tuning-Optionen ausgestattet.
Bestandteile der Intel® oneAPI Toolkits
-
Intel® oneAPI DPC++/C++ Compiler
Compiler für C++, SYCL und DPC++ Quellcode
Erzeugt optimierten Binärcode (sowohl für das Gast- als auch das Zielsystem, bspw. Acceleratoren) -
Intel® DPC++ Compatibility Tool
Assistent zur Migration von CUDA Quellcode nach DPC++ -
Intel® oneAPI DPC++ Library
Funktionssammlung zur hoch-performanten Parallel-Verarbeitung von Daten -
Intel® oneAPI Threading Building Blocks
Eine weitere Funktionssammlung für die parallele Programmierung -
Intel® oneAPI Math Kernel Library
Die Weiterentwicklung der bekannten MKL mit Funktionen basierend auf BLAS, LAPACK, SCALAPACK, FFTW, usw. -
Intel® oneAPI Data Analytics Library
Sammlung von Funktionen zur Verarbeitung riesiger Datenmengen, zum Einsatz in Programmen der Künstlichen Intelligenz, Datenanalyse usw. -
Intel® Distribution for Python
Hochperformante Funktionen zur Verwendung in Python -
Intel® VTune™ Profiler
Analyse-Tool zum Auffinden von Performance-Engpässen -
Intel® Advisor
Assistent und Ratgeber zur Performanceverbesserung von Programmen -
Intel® oneAPI Video Processing Library
Library mit Funktionen zur Videoverarbeitung (high-speed, real-time decoding / encoding) -
Intel® oneAPI Deep Neural Network Library
Funktionssammlung für die Programmierung von KI Applikatione -
Intel® oneAPI Collective Communications Library
Funktionen zum skalierbaren und effizienten Trainieren Neuronaler Netze -
Intel® Integrated Performance Primitives
Sammlung von Funktionen zur Bild- und Signalverarbeitung, Kryptographie, Datenkomprimierung u.a.
-
Des weiteren sind noch spezielle Varianten der C++ und Fortran Compiler (Intel® C++ Compiler Classic, Intel® Fortran Compiler Classic) erhältlich, die Bestandteile einiger der u.g. Toolkits sind.
Intel® oneAPI Toolkits
Intel bietet vier verschiedene oneAPI Toolkit Varianten an:
-
Intel® oneAPI Base Toolkit
Intel®: "Get started with this foundational kit that enables developers of all types to build, test, and deploy performance-driven, data-centric applications across CPUs, GPUs, and FPGAs."
- Intel® oneAPI Base & HPC Toolkit
Intel®: "Deliver fast C++, Fortran, OpenMP, and MPI applications that scale."
- Intel® oneAPI Base & IoT Toolkit
Intel®: "Build high-performing, efficient, reliable solutions that run at the network’s edge."
- Intel® oneAPI Base & Rendering Toolkit
Intel®: "Create high-performance, high-fidelity visualization applications."
Diese sind inclusive Support durch Intel käuflich erwerbbar. Ergänzend sind vorhanden und auf Anfrage erhältlich:
-
Intel® oneAPI DL Framework Developer Toolkit
-
Intel® oneAPI Intel® AI Analytics Toolkit
-
Intel® oneAPI Intel® OpenVINO Toolkit
-
Intel® oneAPI Intel® System Bring-UpToolkit
Betriebssysteme
Die Intel® oneAPI Toolkits sind derzeit für Windows,
Linux und MacOS erhältlich, wobei nicht immer alle Betriebssysteme unterstützt
werden.
Toolkit Bestandteile
Intel® oneAPI Tool |
Base
|
HPC
|
Iot
|
Rendering
|
DPC++/ C++ Compiler | x | x | x | |
DPC++ Library | x | |||
DPC++ Compatibility Tool | x | |||
GDB (Debugger) | x | |||
Threading Building Blocks | x | |||
VTune™ Profiler | x | |||
Advisor | x | |||
Data Analytics Library | x | |||
Deep Neural Networks Library | x | |||
Collective Communications Library | x | |||
Integrated Performance Primitives | x | |||
Integrated Performance Primitives Cryptography | x | |||
Math Kernel Library | x | |||
Video Processing Library | x | |||
Distribution for Python | x | |||
Cluster Checker | x | |||
Fortran Compiler | x | |||
Fortran Compiler Classic | x | |||
Inspector | x | x | ||
MPI Library | x | |||
Trace Analyzer and Collector | x | |||
Eclipse IDE | x | |||
IoT connection tools | x | |||
Linux Kernel Build Tool | x | |||
Embree | x | |||
Open Image Denoise | x | |||
OpenSWR | x | |||
Open Volume Kernel Library | x | |||
OSPRay | x |
Lizensierung
Wie schon beim früheren Intel® Parallel Studio XE wird zwischen Einzelplatz- und Netzwerklizenzen unterschieden:
-
Single Node bzw. Named-user
Für einen registrierten Benutzer, zum Einsatz auf Laptop, Desktop und Workstation -
Concurrent
Für mehrere Benutzer im Netzwerk, zum Einsatz wie zuvor und zusätzlich auf einem Server
- Multi Node Concurrent
Für mehrere Benutzer im Netzwerk, zum Einsatz wie zuvor und zusätzlich in einem Cluster
Intel bietet bei den Netzwerklizenzen (Concurrent bzw. Multi Node Concurrent) zwei Varianten an, die durch die maximale Anzahl der unterstützten Entwickler (developer) definiert werden:
- Max. 10 Entwickler: 2 Concurrent User
- Max. 25 Entwickler: 5 Concurrent User
Sollen mehr Programmierer unterstützt werden, sind entsprechende
Vielfache dieser Lizenzen zu beschaffen.
Für die Netzwerklizenzen wird FlexLM nicht mitgeliefert (wie das früher
beim Intel® Parallel Studio XE der Fall war). Lizensierungs - bzw. Nutzungsbeschränkungen
ergeben sich jetzt aus der rechtlichen Grundlage (d.i.d. Lizenzvertrag
- EULA) bzw. der Registrierung der Entwickler in Intels Download- und Registrierungs-Center.
Des weiteren unterscheidet Intel zwischen kommerziellen Lizenzen
und akademischen. Letztere sind ausschließlich Hochschulen vorbehalten,
die akademische Grade verleihen. D.h. auch nicht-profitorientierte Forschungsinstitute
können nur kommerzielle Lizenzen mit Support erwerben.
Im Gegensatz zu früher, erfolgt nun keine betriebssystem-spezifische
Lizensierung mehr. D.h. bspw., wenn ein Intel® oneAPI Toolkit für
Linux und Windows verfügbar ist, dann umfaßt die Lizenz auch die
Nutzungserlaubnis für beide Betriebssystemvarianten.
Support
Nach Kauf und Registration eines Intel® oneAPI Toolkit erhalten
die registrierten Nutzer ein Jahr lang Zugang zum Intel Online Service Center,
über das sämtliche technische Unterstützungsleistungen, die Sie
anfragen, von Intel abgewickelt werden. Im diesem geschützten Bereich werden
auch Updates kostenfrei bereitgestellt. Ein Support-Kontrakt kann nach Ablauf
der Wartungsperiode erneuert werden ("Support Service Renewal").
Intel verspricht als Supportleistungen für Kunden mit Supportvertrag, daß
Anfragen (support tickets) bevorzugt und beschleunigt bearbeitet werden.
Für Nutzer, die Intel® oneAPI Toolkits ohne Supportvertrag einsetzen, moderiert
Intel öffentliche Supportforen, in denen sich die Benutzer gegenseitig
helfen.
Registrierte Nutzer mit Support haben Zugriff auf ältere Versionen (bei
den Compilern auf die letzten 3 größeren Releases). Nutzer ohne Support
steht nur die aktuelle Version zur Verfügung.
Lieferumfang ESD (electronic software delivery)
Wir liefern einen Link zu Intel's Download Center sowie einen Lizenzschlüssel (license key). Damit registrieren Sie sich dort für das lizensierte Produkt und können es dann laden. Der Lizenzschlüssel kann auch zur Installation verwendet werden. Falls Sie Schwierigkeiten damit haben sollten, hilft Intel's Support weiter, oder Sie kontaktieren uns. Wir lassen Sie nicht alleine, wenn etwas nicht klappt!
Commercial License: Kommerzielle Lizenzen gestatten die Nutzung auch zu kommerziellen Zwecken, d.h. die damit erstellte Software darf verkauft werden.
Support Service
Nach Kauf und Registration des Intel Software-Produkts erhalten Sie ein Jahr lang (=Wartungsperiode) Zugang zu Intel's Download Center sowie zum Intel Premier Support Forum, über das sämtliche technische Unterstützungsleistungen, die Sie anfragen, abgewickelt werden.
Im Download Center werden die aktuellen Versionen, Updates und auch ältere Versionen der Software kostenfrei zum Download bereitgestellt.
Ein Support-Service-Kontrakt kann vor oder nach Ablauf der Wartungsperiode (1 Jahr) erneuert werden (das sog. Support Service Renewal - kurz SSR) . Eine neue Wartungsperiode beginnt jeweils am Folgetag des Ablaufs der vorherigen Wartungsperiode und zwar völlig unabhängig davon, wann die neue Wartung bestellt wird.