在 TFLite v2.3 中为 ARM64 启用 XNNPack

Enable XNNPack in TFLite v2.3 for ARM64

TFLite 团队最近宣布在 TF v2.3 (https://blog.tensorflow.org/2020/07/accelerating-tensorflow-lite-xnnpack-integration.html) 中支持 XNNPack。这应该会为 ARM v8 内核上的浮点运算提供一些相当令人印象深刻的加速。

有谁知道如何为 TFLite 的 ARM64 版本启用 XNNPack?基准测试应用程序尤其适合在目标硬件上测试此新功能。 iOS 和 Android 支持是通过在编译时将标志传递给 Bazel 来启用的。不幸的是,没有为构建 ARM64 板提供指导。构建说明(见下文)不提供任何更新的指导,并且检查 download_dependencies.sh 没有显示正在从任何地方下载 XNNPack。

https://www.tensorflow.org/lite/guide/build_arm64

Makefile-based 构建尚不支持 XNNPACK。我们最近在 ARM64 中添加了对 cross-compilation 的实验性支持(通过 bazel build 命令中的 --config=elinux_aarch64),这应该允许 build-time opt-in 到 XNNPACK,同时添加 --define tflite_with_xnnpack=true 在你的构建命令中。期待在下一个 TF 2.4 版本中对 cross-compilation 到 ARM64 的文档进行一些改进,我们还将研究在默认​​情况下为尽可能多的平台启用 XNNPACK。