DNN Execution Time Estimation

Das Open Source Framework ANNETTE ermöglicht die Vorhersage der Ausführungszeit eines Convolutional Neural Network (CNN) auf verschiedenen Plattformen.

Logo von Annette

Mit der Einführung neuer Hardware-Beschleuniger für Deep Neural Networks (DNNs) hat die Rechenleistung für Anwendungen der Künstlichen Intelligenz (KI) rapide zugenommen. Allerdings werden mit komplexeren und auf spezifische Anwendungen optimierten DNN-Algorithmen die Latenzanforderungen immer anspruchsvoller. Es ist daher entscheidend, optimale Punkte im Designraum zu finden.

Um die architektonische Suche von der Zielhardware zu entkoppeln, schlagen wir einen Zeitabschätzungsansatz vor, der die Inferenzlatenz von DNNs auf Hardware-Beschleunigern modellieren kann. Dies geschieht anhand von Mapping- und Layer-basierten Schätzmodellen. Unsere Methodik extrahiert eine Reihe von Modellen aus Mikrokernel- und Multi-Layer-Benchmarks und generiert ein gestapeltes Modell zur Schätzung von Mapping und Netzwerkausführungszeit. Wir vergleichen die Genauigkeit und Zuverlässigkeit der generierten gemischten Modelle mit statistischen Modellen und dem Roofline-Modell sowie einem verfeinerten Roofline-Modell zur Evaluierung.

Wir testen die gemischten Modelle auf dem ZCU102 SoC-Board mit Xilinx Deep Neural Network Development Kit (DNNDK) und dem Intel Neural Compute Stick 2 (NCS2) anhand einer Auswahl von 12 hochmodernen neuronalen Netzwerken. Dabei zeigt sich ein durchschnittlicher Schätzfehler von 3,47% für das DNNDK und 7,44% für das NCS2, wobei die gemischten Modelle für fast alle ausgewählten Netzwerke die statistischen und analytischen Schichtmodelle übertreffen. Für eine zufällig ausgewählte Teilmenge von 34 Netzwerken des NASBench-Datensatzes erreicht das gemischte Modell eine Korrelation von 0,988 im Spearman-Rangkorrelationskoeffizienten.

 

Weitere Links:

GitHub Repository, öffnet eine externe URL in einem neuen Fenster
Paper, öffnet eine externe URL in einem neuen Fenster