Esta página descreve como criar o LiteRT tflite_runtime
Python
biblioteca para x86_64 e vários dispositivos ARM.
As instruções a seguir foram testadas em um PC Ubuntu 16.04.3 de 64 bits (AMD64) , macOS Catalina (x86_64) e imagem do Docker de desenvolvimento do TensorFlow tensorflow/tensorflow:devel.
Pré-requisitos
É necessário ter o CMake instalado e uma cópia do código-fonte do TensorFlow. Verifique Criar LiteRT com o CMake para mais detalhes.
Para criar o pacote do PIP para sua estação de trabalho, execute o seguinte: comandos
PYTHON=python3 tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh native
Compilação cruzada ARM
Para compilação cruzada ARM, é recomendável usar o Docker, porque ele facilita
para configurar vários ambientes de build. Além disso, você precisa da opção target
para descobrir
arquitetura de destino.
Há uma ferramenta auxiliar no Makefile tensorflow/lite/tools/pip_package/Makefile
disponíveis para invocar um comando de build usando um contêiner predefinido do Docker. Em um
máquina host Docker, é possível executar um comando de criação da seguinte maneira:
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=<target> PYTHON_VERSION=<python3 version>
Nomes de destino disponíveis
tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh
necessidade de script
um nome de destino para descobrir a arquitetura-alvo. Esta é a lista de
de destino.
Destino | Arquitetura de destino | Comentários |
---|---|---|
Armhf | ARMv7 VFP com Neon | Compatível com Raspberry Pi 3 e 4 |
rpi0 | ARMv6 | Compatível com Raspberry Pi Zero |
aarch64 | aarch64 (ARM de 64 bits) | Coral Mendel Linux 4.0 Raspberry Pi com Ubuntu Server 20.04.01 LTS de 64 bits |
nativo | Sua estação de trabalho | Ele cria com "-mnative" otimização |
padrão | Sua estação de trabalho | Destino padrão |
Exemplos de build
Aqui estão alguns exemplos de comandos que você pode usar.
Destino de armhf para Python 3.7
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=armhf PYTHON_VERSION=3.7
destino do aarch64 para Python 3.8
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=aarch64 PYTHON_VERSION=3.8
Como usar um conjunto de ferramentas personalizado?
Se os binários gerados não forem compatíveis com seu destino, será preciso usar
seu próprio conjunto de ferramentas ou fornecer sinalizações de compilação personalizadas. (Verificar
este
entender seu ambiente de destino). Nesse caso, você precisa modificar
tensorflow/lite/tools/cmake/download_toolchains.sh
para usar seu próprio conjunto de ferramentas.
O script do conjunto de ferramentas define as duas variáveis a seguir para a
build_pip_package_with_cmake.sh
.
Variável | Finalidade | exemplo |
---|---|---|
ARMCC_PREFIX |
define o prefixo do conjunto de ferramentas | arm-linux-gnueabihf- |
ARMCC_FLAGS |
flags de compilação | -march=armv7-a -mfpu=neon-vfpv4 |