29. September 2020 - KooperationenoneAPI Academic Center of Excellence am Universitätsrechenzentrum gegründet
URZ unterstützt die oneAPI-Initiative zur vereinfachten Softwareentwicklung für heterogene Hardware.
Am Universitätsrechenzentrum Heidelberg (URZ) wurde ein oneAPI Academic Center of Excellence (CoE) gegründet. Das neue CoE wird mit seiner Forschung die oneAPI-Industrieinitiative unterstützen, durch die ein einheitliches, offenes Programmiermodell für heterogene Rechnerarchitekturen entstehen soll.
Eine gemeinsame Sprache für heterogene Rechenarchitekturen
Das URZ wird seine Forschungs- und Programmieraktivitäten auf eine fundamentale Herausforderung des Hochleistungsrechnens (HPC) richten: die Nutzung unterschiedlicher Arten von Hardware für verschiedene Rechenanwendungen. Beschleuniger-Hardware, wie etwa Grafikprozessoren (GPUs) oder programmierbare Logikbausteine (FPGAs), wird häufig in Kombination mit generischen Prozessoren (CPUs) eingesetzt. Durch die Verwendung verschiedener Arten von Hardware sind Computer sehr leistungsfähig und für eine Vielzahl von Situationen und Anforderungen flexibel einsetzbar. Die Heterogenität der Hardware erschwert jedoch die Softwareentwicklung für diese Rechner, insbesondere wenn spezialisierte Komponenten verschiedener Hersteller performant zusammenarbeiten sollen.
Ein Hauptgrund für diese Problematik liegt darin, dass viele beschleunigte Rechnerarchitekturen eigene Programmiermodelle erfordern. Daher müssen Softwareentwickler für jede Recheneinheit in einem heterogenen System eine andere - manchmal proprietäre - Sprache erlernen und verwenden, was die Komplexität der Entwicklungsarbeit signifikant erhöht und die Flexibilität einschränkt.
oneAPIs architekturübergreifende Sprache Data Parallel C++ (DPC++), die auf dem SYCL-Standard der Khronos Group für heterogene Programmierung in C++ basiert, löst diese Herausforderung durch ein einheitliches, offenes Entwicklungsmodell. Dieses Modell ermöglicht performante und produktive heterogene Programmierung sowie herstellerübergreifenden Support.
Entwickeln für heterogene Systeme: Funktionen und Fertigkeiten weiterentwickeln, Interoperabilität maximieren
Als oneAPI CoE wird das URZ fortgeschrittene DPC++ Fähigkeiten in hipSYCL einarbeiten, eine Implementierung, die Systeme auf Basis von AMD-GPUs, NVIDIA-GPUs und CPUs unterstützt. Neue DPC++-Erweiterungen sind Teil der vorläufigen SYCL 2020-Spezifikation, die hipSYCL und die davon unterstützten Plattformen mit Features wie Unified Shared Memory ergänzen wird. Dies wird den Support von oneAPI-Anwendungen über verschiedene Systemarchitekturen und Hersteller hinweg fördern.
Aksel Alpay, Spezialist für Hochleistungsrechnen am URZ und Urheber von hipSYCL, leitet diese weitere Entwicklung. „Das gesamte Projekt ist ziemlich ambitioniert“, so Alpay, der einen Blick in die Zukunft wagt. „hipSYCL ist sowohl ein akademisches Forschungsvorhaben als auch ein Entwicklungsprojekt, dessen Endprodukt im Produktivbetrieb genutzt wird. Es wird überaus spannend sein, die Fähigkeiten von DPC++ und SYCL 2020 auf zusätzliche Architekturen wie AMD-GPUs zu übertragen.“
Um die Forschung voranzubringen, werden die URZ-Forscher:innen und -Entwickler:innen den Kontakt zu einem internationalen Netzwerk von Expert:innen bei Intel und einer Vielzahl an akademischen und staatlichen Institutionen nutzen können, zum Vorteil der nachhaltigen Entwicklung von hipSYCL und zur Förderung der oneAPI-Initiative.
„Für ein wissenschaftliches Rechenzentrum ist es eine wunderbare Perspektive, Zugang zu solcher Expertise zu haben und mit Partnern aus aller Welt gemeinsam an einem offenen Standard zu arbeiten“, so Prof. Dr. Vincent Heuveline, CIO der Universität Heidelberg und URZ-Direktor. Heuveline, einer der Hauptbefürworter des CoE, wird neben seiner Rolle als Bindeglied zwischen Universität und CoE zusätzlich als wissenschaftlicher Berater für die Arbeit des Zentrums fungieren.
„Eines unserer strategischen Ziele ist es, einen messbaren Beitrag zum Transfer von neuen Technologien in Wirtschaft und Industrie zu erbringen, sowie natürlich unsere Expertise und Forschungsanstrengungen rund um das Thema Supercomputing auszubauen. Das oneAPI CoE wird uns beides ermöglichen“, erklärt Heuveline.
„oneAPI ist eine wirklich industrieübergreifende Initiative, die darauf abzielt, die Entwicklung für unterschiedliche Aufgaben zu vereinfachen, indem sie die Wiederverwendung von Code auf einer Vielzahl von Architekturen durch einen offenen und kooperativen Ansatz erleichtert. Die Forschungsarbeit des URZ wird dazu beitragen, das herstellerübergreifende Versprechen von oneAPI einzulösen, indem verbesserter DPC++-Anwendungssupport auf andere Architekturen ausgeweitet wird“, erklärt Dr. Jeff McVeigh, Vice President of Datacenter XPU Products and Solutions bei Intel.
Über oneAPI
oneAPI ist eine Industrieinitiative zur Schaffung eines einzigen, einheitlichen, architekturübergreifenden Programmiermodells für CPUs und Beschleunigerarchitekturen. Die Initiative, die auf Industriestandards und ein offenes Entwicklungskonzept setzt, soll dazu beitragen, die Softwareentwicklung für Hochleistungsrechner zu beschleunigen, Performance zu erhöhen und Vorgaben für eine effiziente und variable Architekturprogrammierung bereitzustellen.