Vorläufige Spezifikationen sind heute für das Feedback der Industrie öffentlich verfügbar. Die verbesserte Einsatzflexibilität schafft die Voraussetzungen für neue, überall verfügbare Kernfunktionen.[mfn]Quelle: khronos.com[/mfn]
Gestern veröffentlichte die Khronos Gruppe, ein offenes Konsortium branchenführender Unternehmen, die fortgeschrittene Interoperabilitätsstandards entwickeln, die vorläufigen Spezifikationen OpenCL 3.0. OpenCL 3.0 richtet die OpenCL-Roadmap neu aus, so dass von Entwicklern angeforderte Funktionen von Hardware-Anbietern auf breiter Basis eingesetzt werden können. Zudem erhöht es die Einsatzflexibilität erheblich, indem es konforme OpenCL-Implementierungen in die Lage versetzt, sich auf die für ihre Zielmärkte relevanten Funktionen zu konzentrieren. OpenCL 3.0 integriert auch Untergruppenfunktionen in die Kernspezifikation, wird mit einer neuen OpenCL C 3.0-Sprachspezifikation ausgeliefert, verwendet ein neues einheitliches Spezifikationsformat und führt Erweiterungen für asynchrone Datenkopien ein, um eine neue Klasse eingebetteter Prozessoren zu ermöglichen. Die vorläufigen OpenCL 3.0-Spezifikationen ermöglichen es der Entwicklergemeinschaft, Feedback in GitHub zu geben, bevor die Spezifikationen und Konformitätstests abgeschlossen sind.
Um einer wachsenden Vielfalt von OpenCL-Geräten gerecht zu werden, macht OpenCL 3.0 alle Funktionen, die über Version 1.2 hinausgehen, optional. Alle OpenCL 1.2-Anwendungen laufen unverändert auf allen OpenCL 3.0-Geräten weiter. Alle Funktionen von OpenCL 2.X sind in der neuen vereinheitlichten Spezifikation kohärent definiert und aktuelle OpenCL 2.X-Implementierungen, die auf OpenCL 3.0 aufgerüstet werden, können weiterhin mit ihrer bestehenden Funktionalität mit voller Abwärtskompatibilität ausgeliefert werden. Alle OpenCL 2.X-API-Funktionen können abgefragt werden und OpenCL C 3.0 fügt Makros zum Abfragen optionaler Sprachfunktionen hinzu.
„OpenCL ist der am weitesten verbreitete, herstellerübergreifende, offene Standard für heterogene parallele Low-Level-Programmierung auf niedriger Ebene – weit verbreitet bei Anwendungen, Bibliotheken, Engines und Compilern, die ein möglichst breites Spektrum unterschiedlicher Prozessoren erreichen müssen„, so Neil Trevett, Vizepräsident bei NVIDIA, Präsident der Khronos-Gruppe und Vorsitzender der OpenCL-Arbeitsgruppe. „OpenCL 2.X bietet signifikante Funktionalität, aber OpenCL 1.2 hat sich als die von allen Anbietern und Märkten benötigte Basislösung erwiesen. OpenCL 3.0 integriert eine straff organisierte Optionalität in die monolithische 2.2-Spezifikation und erhöht damit die Bereitstellungsflexibilität, die es OpenCL ermöglicht, die Messlatte für durchgehend verfügbare Funktionalität in zukünftigen Kernspezifikationen höher zu legen.“
Für die C++-Kernel-Entwicklung ist die OpenCL-Arbeitsgruppe von der ursprünglichen OpenCL C++-Kernel-Sprache, die in OpenCL 2.2 definiert ist, zur ‚C++ for OpenCL‘-Community, einem von Clang unterstützten Open-Source-Projekt, übergegangen. C++ für OpenCL bietet Kompatibilität mit OpenCL C, ermöglicht Entwicklern die Verwendung der meisten C++17-Funktionen in OpenCL-Kerneln und ist mit jeder OpenCL 2.X- oder OpenCL 3.0-Implementierung kompatibel, die die Aufnahme von SPIR-V™ unterstützt.
Die Erweiterungen Extended Asynchronous Copy und Asynchronous Work Group Copy Fence, die zusammen mit OpenCL 3.0 veröffentlicht wurden, ermöglichen effiziente, geordnete DMA-Transaktionen als erstklassige Bürger in OpenCL – ideal für auf Scratch Pad Memory basierende Geräte, die eine feinkörnige Kontrolle über die Pufferzuweisung erfordern. Diese Erweiterungen sind die ersten von bedeutenden bevorstehenden Fortschritten in OpenCL zur Verbesserung der Unterstützung für eingebettete Prozessoren.
Zur Begleitung der heutigen Veröffentlichung hat die OpenCL-Arbeitsgruppe ihren OpenCL-Ressourcenleitfaden aktualisiert, um Computerspezialisten, Entwicklern und Forschern aller Qualifikationsstufen zu helfen, die Leistungsfähigkeit von OpenCL effektiv zu nutzen. Die OpenCL-Arbeitsgruppe wird den Leitfaden kontinuierlich weiterentwickeln und begrüßt jedes Feedback, wie er über GitHub verbessert werden kann.
OpenCL 3.0 bei IWOCL.
Die Mitglieder der OpenCL-Arbeitsgruppe nehmen an der Sitzung des Khronos-Panels auf der Online-Konferenz IWOCL / SYCLcon am 28. April um 16.00 Uhr GMT teil. IWOCL / SYCLcon ist das führende Forum für Hochleistungscomputerspezialisten, die mit OpenCL, SYCL, Vulkan und SPIR-V arbeiten. Die Anmeldung ist kostenlos.
Branchenunterstützung für OpenCL 3.0.
„In den letzten Jahren gab es eine beeindruckende Verbreitung von OpenCL, um heterogene Verarbeitungssysteme in vielen Marktsegmenten voranzutreiben„, sagte Andrew Richards, Gründer und CEO von Codeplay Software. „Dieses Update von OpenCL 3.0 bringt wichtige Flexibilitätsvorteile, die es vielen sich entwickelnden Branchen, von KI und HPC bis hin zur Automobilindustrie, ermöglichen, sich auf ihre spezifischen Anforderungen zu konzentrieren und offene Standards zu übernehmen. Codeplay freut sich, Hardware-Anbieter in die Lage zu versetzen, OpenCL 3.0 zu unterstützen und die Vorteile der Flexibilität zu nutzen, die das Ökosystem der Software-Produkte bietet.“
Mark Butler sagte dazu: „Mit dem Schwerpunkt auf der Einsatzflexibilität sehen wir OpenCL 3.0 als einen ausgezeichneten Schritt nach vorn bei der Bereitstellung wichtiger Funktionen für Entwickler, mit der Möglichkeit, im Laufe der Zeit weitere Funktionen hinzuzufügen. Dies ist wirklich ein Schritt nach vorn für das OpenCL-Ökosystem, das es Entwicklern ermöglicht, portable Anwendungen zu schreiben, die auf weithin akzeptierte Funktionalität angewiesen sind. Gegenwärtig ausgelieferte GPUs, die auf der PowerVR Rogue-Architektur basieren, werden eine bedeutende Funktionserweiterung erfahren, darunter SVM, generischer Adressraum und Arbeitsgruppenfunktionen. Nach der endgültigen Freigabe der Spezifikation wird Imagination eine konforme OpenCL 3.0-Implementierung mit Unterstützung für eine breite Palette von PowerVR-GPUs ausliefern, einschließlich unseres neuesten Angebots mit IMG A-Series„.
„Intel unterstützt nachdrücklich architekturübergreifende Standards, die über das gesamte Computer-Ökosystem hinweg vorangetrieben werden, wie z.B. in OpenCL 3.0 und SYCL„, so Jeff McVeigh, Vice President, Intel Architecture, Graphics and Software. „Standardbasierte, einheitliche Programmiermodelle werden mit der bevorstehenden Veröffentlichung unserer neuen Xe-GPU-Architektur Effizienz ermöglichen und die Kreativität unserer Entwickler freisetzen„, so McVeigh.
„NVIDIA begrüßt, dass OpenCL 3.0 den Schwerpunkt auf die Definition einer Baseline legt, damit entwicklerkritische Funktionen in zukünftigen Versionen der Spezifikation weitgehend übernommen werden können„, so Anshuman Bhat, Compute Product Manager bei NVIDIA. „NVIDIA wird ein konformes OpenCL 3.0 ausliefern, wenn die Spezifikation fertiggestellt ist und wir arbeiten an der Definition der Vulkan® Interop-Erweiterung, die zusammen mit den mehrschichtigen OpenCL-Implementierungen die Einsatzflexibilität für OpenCL-Entwickler deutlich erhöhen wird.“
„OpenCL 3.0 ist ein wichtiger Schritt vorwärts in dem Bestreben, mehr Leistung und Innovation auf einer immer breiteren Palette von Computerplattformen und Anwendungen zu ermöglichen„, so Balaji Calidas, Director of Engineering bei Qualcomm. „Das flexible Erweiterungsmodell wird unseren Kunden und Softwarepartnern helfen, das enorme Potenzial, das sowohl in unseren bestehenden als auch in zukünftigen Anwendungsprozessoren steckt, voll auszuschöpfen. Wir freuen uns, dass wir die Gelegenheit hatten, einen Beitrag zu dieser Spezifikation zu leisten und wir freuen uns darauf, das Endprodukt zu unterstützen„, so Balaji Calidas, Director of Engineering bei Qualcomm.
„Viele unserer Kunden wünschen sich eine GPU-Programmiersprache, die auf allen Geräten läuft, und mit zunehmendem Einsatz im Edge-Computing und im mobilen Bereich steigt dieser Bedarf immer mehr„, so Vincent Hindriksen, Gründer und CEO von Stream HPC. „OpenCL ist die einzige Lösung für den Zugriff auf diverse Siliziumbeschleuniger und viele wichtige Software-Stacks verwenden OpenCL/SPIR-V als Backend. Wir freuen uns sehr, dass OpenCL 3.0 die Akzeptanz in der Branche noch weiter erhöhen wird, da es unseren Kunden die Gewissheit gibt, dass ihre bisherigen und zukünftigen Investitionen in OpenCL gerechtfertigt sind„.
„OpenCL 3.0 hat ein neues Kapitel für die OpenCL-API aufgeschlagen, die in den letzten 10 Jahren als Standard-GPGPU-API gedient hat„, sagte Weijin Dai, Executive Vice President und GM der Abteilung für geistiges Eigentum bei VeriSilicon. „Mit dem gestrafften OpenCL 3.0-Kernfunktionssatz ermöglicht OpenCL 3.0 einer ganz neuen Klasse von eingebetteten Geräten die Übernahme der OpenCL-API für GPU-Berechnung und ML/AI-Verarbeitung und ebnet OpenCL den Weg für Interop oder Layer mit der Vulkan-API. VeriSilicon wird OpenCL 3.0-Implementierungen schnell auf einer breiten Palette unserer eingebetteten GPU- und VIP-Produkte implementieren, um unseren Kunden die Entwicklung neuer GPGPU/ML/AI-Anwendungen mit der OpenCL 3.0-API zu ermöglichen.“
Wir hoffen, dass wir Ihnen einen guten Überblick über OpenCL 3.0 bieten konnten. Wenn Sie noch Fragen oder Anregungen haben sollten, hinterlassen Sie uns einen Kommentar.
Vielen Dank für Ihren Besuch.