Das Unternehmen AMD hat den Quellcode des Treibers für Karten mit der auf der XDNA-Architektur basierenden Engine veröffentlicht, die Werkzeuge zur Beschleunigung von Berechnungen im Bereich maschinelles Lernen und Signalverarbeitung (NPU, Neural Processing Unit) bereitstellt. Die auf der XDNA-Architektur basierenden NPUs sind in den Serien 7040 und 8040 der AMD Ryzen-Prozessoren, den AMD Alveo V70-Beschleunigern und dem SoC AMD Versal verfügbar. Der Code ist in C und C++ geschrieben und steht unter der GPLv2-Lizenz. Für den Betrieb des Treibers wird der Linux-Kernel 6.7 mit Unterstützung für IOMMU SVA (Shared Virtual Addressing) benötigt.
Der veröffentlichte Code umfasst den Treiber für den Linux-Kernel (amdxdna.ko) und eine Runtime-Bibliothek (Plugin „xrt_plugin*-amdxdna“) zur Nutzung der XRT-Schnittstelle (Xilinx Runtime Library), die es Anwendungen ermöglicht, auf die auf der Seite des Hardwarebeschleunigers ausgeführten Dispatcher (Kernel) zuzugreifen. XRT erlaubt die Nutzung der AMD-NPU in Anwendungen mit gängigen Programmiersprachen. Es werden verschiedene Abstraktionsebenen bereitgestellt, von niedrigstufigen APIs für C/C++ bis hin zu hochgradigen Bindungen für Python und Komponenten zur Integration mit TensorFlow, PyTorch und Caffe.
Quelle: opennet.ru
