Odpowiedz już dziś na lokalne wydarzenie TensorFlow Everywhere!
Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Zbuduj TensorFlow Lite dla płyt ARM64

Na tej stronie opisano, jak zbudować biblioteki statyczne i współużytkowane TensorFlow Lite dla komputerów z procesorem ARM64. Jeśli chcesz po prostu zacząć używać TensorFlow Lite do wykonywania modeli, najszybszą opcją jest zainstalowanie pakietu wykonawczego TensorFlow Lite, jak pokazano w przewodniku Szybki start dla języka Python .

Kompilacja krzyżowa dla ARM64 z Make

Aby zapewnić odpowiednie środowisko kompilacji, zalecamy użycie jednego z naszych obrazów TensorFlow Docker, takiego jak tensorflow / tensorflow: devel .

Aby rozpocząć, zainstaluj łańcuch narzędzi i biblioteki:

sudo apt-get update
sudo apt-get install crossbuild-essential-arm64

Jeśli używasz Dockera, nie możesz używać sudo .

Teraz git-sklonuj repozytorium TensorFlow ( https://github.com/tensorflow/tensorflow ) - jeśli używasz obrazu TensorFlow Docker, repozytorium jest już dostępne w /tensorflow_src/ - i uruchom ten skrypt w katalogu głównym repozytorium TensorFlow do pobrania wszystkich zależności kompilacji:

./tensorflow/lite/tools/make/download_dependencies.sh

Pamiętaj, że wystarczy to zrobić tylko raz.

Następnie skompiluj:

./tensorflow/lite/tools/make/build_aarch64_lib.sh

Powinno to skompilować bibliotekę statyczną w: tensorflow/lite/tools/make/gen/linux_aarch64/lib/libtensorflow-lite.a .

Kompiluj natywnie na ARM64

Te kroki zostały przetestowane na HardKernel Odroid C2, gcc w wersji 5.4.0.

Zaloguj się do swojej tablicy i zainstaluj toolchain:

sudo apt-get install build-essential

Teraz git-sklonuj repozytorium TensorFlow ( https://github.com/tensorflow/tensorflow ) i uruchom to w katalogu głównym repozytorium:

./tensorflow/lite/tools/make/download_dependencies.sh

Pamiętaj, że wystarczy to zrobić tylko raz.

Następnie skompiluj:

./tensorflow/lite/tools/make/build_aarch64_lib.sh

Powinno to skompilować bibliotekę statyczną w: tensorflow/lite/tools/make/gen/linux_aarch64/lib/libtensorflow-lite.a .

Kompilacja krzyżowa dla ARM64 z Bazel

Możesz użyć łańcuchów narzędzi ARM GCC z Bazel, aby zbudować współdzieloną bibliotekę ARM64.

Poniższe instrukcje zostały przetestowane na 64-bitowym komputerze z systemem Ubuntu 16.04.3 (AMD64) i TensorFlow devel docker image tensorflow / tensorflow: devel .

Aby skompilować krzyżowo TensorFlow Lite z Bazel, wykonaj następujące czynności:

Krok 1. Zainstaluj Bazel

Bazel to podstawowy system kompilacji dla TensorFlow. Zainstaluj najnowszą wersję systemu kompilacji Bazel .

Krok 2. Sklonuj repozytorium TensorFlow

git clone https://github.com/tensorflow/tensorflow.git tensorflow_src

Krok 3. Zbuduj plik binarny ARM64

Biblioteka C.
bazel build --config=elinux_aarch64 -c opt //tensorflow/lite/c:libtensorflowlite_c.so

Szczegółowe informacje można znaleźć na stronie TensorFlow Lite C API .

Biblioteka C ++
bazel build --config=elinux_aarch64 -c opt //tensorflow/lite:libtensorflowlite.so

Bibliotekę współdzieloną można znaleźć w: bazel-bin/tensorflow/lite/libtensorflowlite.so .

Obecnie nie ma prostego sposobu na wyodrębnienie wszystkich potrzebnych plików nagłówkowych, dlatego należy dołączyć wszystkie pliki nagłówkowe do tensorflow / lite / z repozytorium TensorFlow. Dodatkowo będziesz potrzebować plików nagłówkowych z FlatBuffers i Abseil.

Itp

Możesz także zbudować inne cele Bazel za pomocą łańcucha narzędzi. Oto kilka przydatnych celów.

  • // tensorflow / lite / tools / benchmark: benchmark_model
  • // tensorflow / lite / examples / label_image: label_image