News OpenCL 3.0 und SYCL - Übersicht der Entwicklungen auf IWOCL 2020

User-News

Von E555user

Hinweis: Diese "User-News" wurde nicht von der Planet 3DNow! Redaktion veröffentlicht, sondern vom oben genannten Leser, der persönlich für den hier veröffentlichten Inhalt haftet.
Mittlerweile sind alle Vortragsvideos zur IWOCL online gegangen. Die diesjährige online Veranstaltung brachte wieder viele interessante Inhalte zur Software-Entwicklung von Compute Anwendungen.

Allgemein interessant waren dabei die Informationen von Neil Trevett (VP Nvidia & Khronos President & OpenCL WG Chair) aus der Intro zum Diskussionspanel (video) über die vergangene und künftige Entwicklung von OpenCL. (PDF).
Bildschirmfoto 2020-05-06 um 21.10.25.png
  • die Verschmelzung bzw. Auflösung von OpenCL in Vulkan wurde aufgegeben, es bleibt eigenständig
  • die OpenCL 2.0 Erweiterungen als strikte Vorgabe wurden aufgegeben, dafür optionale HW-Unterstützung in 3.0
  • OpenCL C++ Spezifikation wurde aufgegeben, dafür sollen C++ Compiler OpenCL übersetzen können
  • SYCL nutzt auch für OpcenCL die intermediate representation SPIR-V
Somit wird SPIR-V mit seinen Tools der Dreh- und Angelpunkt bei der Übersetzung unterschiedlicher Code-Quellen für die Compute-Hardware.
Bildschirmfoto 2020-05-06 um 21.15.09.png
Auffallend ist dass diese Jahre des Try-n-Error rund um die OpenCL Entwicklung eine Stagnation in der Anzahl wissenschaftlicher Veröffentlichungen verursachten, gerade als das Compute-Thema nochmal deutlich an Fahrt gewann und rund um AI/KI mit CUDA viel geforscht wurde.
Bildschirmfoto 2020-05-06 um 21.17.20.png
Man kann in OpenCL 3.0 wohl am ehesten einen Restart mit bewährten Konzepten und notwendiger Konsolidierung sehen um den verschiedenen wirklich aktiven Stakeholdern gerecht zu werden. Dabei ist OpenCL bei Entwicklern (z.B. vertreten durch Sony-Video und Adobe) für Plattform übergreifende Computeanwenungen bei Anwendersoftware bereits gesetzt.

Doch gerade auch das Engagement von Intel für SYCL ist auf der Veranstaltung einmal mehr deutlich geworden. Man sieht wie die Intel-Vertreter ähnliche Pfade beschreiten müssen wie die Compute-Experten von AMD mit HIP und ROCm. Unter dem Terminus Unifed Shared Memory (USM) (PDF) propagiert man bei Intel heterogene CPU-GPU Compute Architekturen.
We have implemented USM as an extension to OpenCL (for CPU and GPU) and SYCL (in our DPC++ Beta compiler), and are recommending that USM be included in future versions of both standards.
Das Intel DPC++ Compatibility Tool (beta) dient dabei vorhanden CUDA Code nach DPC++ zu konvertieren. Unter dem Terminus Data Parallel C++ will man bei Intel künftig die Computesoftware in C++ und SYCL programmieren. Auch für den für 2021 angekündigten Aurora Supercomputer soll dieses als Basis der oneAPI Entwicklungsplattform genutzt werden (Vortrag Argonne Nat. Labs.).
Bildschirmfoto 2020-05-06 um 21.07.55.png
 
Zuletzt bearbeitet:
Oben Unten