
Beim Intel Software Technology Day im Juni sprachen die führenden Ingenieure des Unternehmens über ein Softwareprojekt namens Intel oneAPI, ein einheitliches Programmiermodell, das die Entwicklung von Software für eine Vielzahl von Computerarchitekturen, einschließlich einer neuen Programmiersprache, erleichtert. In diesem Beitrag werden wir eine kurze Beschreibung dieses Projekts geben - wie sie sagen, um fortzufahren ...
oneAPI ist ein Projekt, das eine einheitliche Reihe von Tools für Entwickler produktiver Software entwickelt. Der Park der Computerplattformen hat sich in letzter Zeit aufgrund spezialisierter Beschleuniger erheblich erweitert. Intel wird Softwarelösungen bereitstellen, mit denen Entwickler die maximale Leistung aus heterogenem Eisen herausholen können.
Bill Savage, Vizepräsident Intel, General Manager Compute Performance Developer ProductsWie wir bemerken, werden die Aufgaben, mit denen wir die uns zur Verfügung stehende Rechenleistung laden, vielfältiger - ebenso wie die Architekturen derselben Leistungen, die in Skalar (CPU), Vektor (GPU), Matrix (AI-Beschleuniger) und Spatial (FPGA) unterteilt sind. Diese gesamte Reihe von Architekturen, Intel SVMP (SVMS) genannt, erfordert ein effizientes Programmiermodell für maximale Leistung. Die Aufgabe von oneAPI besteht darin, Benutzerfreundlichkeit und Effizienz sicherzustellen und die Notwendigkeit zu beseitigen, architekturabhängige Versionen des Codes mit verschiedenen Programmiersprachen und Entwicklungstools zu verwalten.
Ein Beispiel dafür, wie Intel die plattformübergreifende Entwicklung bereits implementiert, ist
Intel OpenVINO , eine Reihe von Tools für einen Softwareentwickler, die einen konsistenten, optimierten Inferenzprozess für Deep-Learning-Algorithmen bieten, die auf einer beliebigen Intel UHMW-Architektur basieren.
oneAPI unterstützt die direkte Programmierung und API-Programmierung, indem eine einheitliche Programmiersprache und einheitliche Bibliotheken bereitgestellt werden, die auf verschiedenen UHMWP-Plattformen maximale native Codeleistung bieten.
- Direkte Programmierung oneAPI enthält die neue Programmiersprache Data Parallel C ++ (DPC ++) - eine offene, umfassende Alternative zu proprietären Sprachen für bestimmte Architekturen. DPC ++ bietet Komfort und Leistung mithilfe eines Programmiermodells, das Entwicklern vertraut ist. DPC ++ basiert auf C ++ und enthält SYCL von The Khronos Group sowie Erweiterungen, die in der offenen Community entwickelt wurden.
- API-Programmierung. Mit den oneAPI-Bibliotheken können Sie mehrere Lastdomänen bereitstellen, für die eine Optimierung möglich ist. Bibliotheksfunktionen werden für bestimmte Architekturen angepasst.
Darüber hinaus wird Intel verbesserte Versionen von Analyse- und Debugging-Tools (Intel VTune Amplifier, Intel Advisor) bereitstellen, die DPC ++ und alle UHMW-Architekturen unterstützen.
Die Beta-Version von oneAPI für Entwickler sowie weitere Details dazu werden Ende 2019 verfügbar sein.