Questa pagina descrive come creare il Python tflite_runtime
LiteRT
libreria per x86_64 e vari dispositivi ARM.
Le seguenti istruzioni sono state testate su Ubuntu 16.04.3 PC a 64 bit (AMD64) , macOS Catalina (x86_64) e immagine Docker di TensorFlow tensorflow/tensorflow:devel.
Prerequisiti
Devi installare CMake e una copia del codice sorgente di TensorFlow. Controlla Crea LiteRT con CMake per i dettagli.
Per creare il pacchetto PIP per la tua workstation, puoi eseguire questo comando tramite comandi SQL.
PYTHON=python3 tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh native
Cross-compilation ARM
Per la compilazione incrociata ARM, si consiglia di usare Docker poiché semplifica
per configurare l'ambiente di più build. Hai anche bisogno di un'opzione target
per capire
l'architettura di destinazione.
Esiste uno strumento di supporto in Makefile tensorflow/lite/tools/pip_package/Makefile
disponibile per richiamare un comando build utilizzando un container Docker predefinito. Su un
macchina host Docker, puoi eseguire un comando di build come segue.
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=<target> PYTHON_VERSION=<python3 version>
Nomi target disponibili
tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh
script richiede
un nome di destinazione per capire
l'architettura di destinazione. Ecco l'elenco delle app supportate
target.
Target | Architettura di destinazione | Commenti |
---|---|---|
Armhf | VFP ARMv7 con neon | Compatibile con Raspberry Pi 3 e 4 |
rpi0 | ARMv6 | Compatibile con Raspberry Pi Zero |
aarch64 | aarch64 (ARM a 64 bit) | Coral Mendel Linux 4.0 Raspberry Pi con Ubuntu Server 20.04.01 LTS a 64 bit |
nativo | La tua workstation | Si basa su "-mnative" ottimizzazione |
predefinita | La tua workstation | Target predefinito |
Esempi di build
Ecco alcuni comandi di esempio che puoi utilizzare.
target armhf per Python 3.7
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=armhf PYTHON_VERSION=3.7
target aarch64 per Python 3.8
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=aarch64 PYTHON_VERSION=3.8
Come si utilizza una toolchain personalizzata?
Se i file binari generati non sono compatibili con il target, devi utilizzare
la tua toolchain o fornire flag di build personalizzati. (Controlla
questo
per comprendere l'ambiente di destinazione). In questo caso, devi modificare
tensorflow/lite/tools/cmake/download_toolchains.sh
per utilizzare la tua toolchain.
Lo script di toolchain definisce le seguenti due variabili per
Script build_pip_package_with_cmake.sh
.
Variabile | Finalità | esempio |
---|---|---|
ARMCC_PREFIX |
definisce il prefisso di Toolchain | arm-linux-gnueabihf- |
ARMCC_FLAGS |
flag di compilazione | -marzo=armv7-a -mfpu=neon-vfpv4 |