KI-Hardware und Software-Stack
Warum können Inferenz-Laufzeitumgebungen wie TensorRT oder ONNX Runtime schneller sein als die unveränderte Inferenz mit dem Trainings-Framework?
- AWeil sie den Graphen auf eine für die Inferenz nötige Form optimieren und Operator-Fusion, Quantisierung sowie die Auswahl zur Hardware passender Kernels durchführen
- BWeil Inferenz-Laufzeitumgebungen Berechnungen auslassen und nur ungefähre Antworten liefern
- CWeil Inferenz-Laufzeitumgebungen die Zahl der Modellgewichte erhöhen
Antwort und Erläuterung anzeigen
Antwort: A. Weil sie den Graphen auf eine für die Inferenz nötige Form optimieren und Operator-Fusion, Quantisierung sowie die Auswahl zur Hardware passender Kernels durchführen
Trainings-Frameworks legen Wert auf flexible Beschreibung und auf die Aufzeichnung für den Backward Pass; bei reiner Inferenz entsteht dadurch Overhead. Eine Inferenz-Laufzeitumgebung entfernt nach dem Laden des Modells alle für die Inferenz unnötigen Teile, fusioniert Operationen, überführt Gewichte und Aktivierungen bei Bedarf in geringere Genauigkeit und wählt für die Ziel-GPU oder -NPU die schnellsten Kernels. So lassen sich bei demselben Modell Latenz und Speicherbedarf deutlich senken.