2016-06-22 12 views
2

Ich bin der camera iOS example von Tensorflow verteilt, und es ist ziemlich langsam: 4-5 Sekunden pro Inferenz auf einem iPhone6, das Modell inception5h.zip läuft.Tensorflow läuft langsam auf iOS

Zu meinem Verständnis ist dieses GoogleNet Modell, das leichtgewichtig ist, und der iOS-Code zieht seine erste Ausgangsschicht, die etwa die Hälfte der Größe des vollständigen Modells ist. Ich habe das gleiche Modell mit der Python-Schnittstelle auf meinem Macbook, die 30 ms pro Inferenz dauert.

Also ich frage mich, warum es über 150x langsamer ist als auf macbook das gleiche Modell auf iOS läuft. Scheint, ich mache einige offensichtliche Dinge falsch.

Antwort

3

Dies ist noch nicht gut dokumentiert, aber Sie müssen in Optimierungs-Flags zum Kompilieren Skript übergeben eine schnelle Version der Bibliothek zu erhalten. Hier ein Beispiel:

tensorflow/contrib/makefile/compile_ios_tensorflow.sh "-Os"

Das Ihre Geschwindigkeit viel bringen sollte bis informell sehe ich eine Sekunde oder weniger mit GoogLeNet auf einem 5S.

+0

In build_all_ios.sh gibt es diese Zeile # Erstellen Sie die iOS TensorFlow-Bibliotheken. Tensorfluss/contrib/makefile/compile_ios_tensorflow.sh "-O3". Deine Flagge ist "-Os", ist das ein Tippfehler? – kawingkelvin