如何在Tegra X2上使用TesnorFlow-GPU模型进行推理?

时间:2018-11-23 07:30:17

标签: python tensorflow tegra tensorrt nvidia-jetson

我是Jetson tegra x2开发板的新手。

我有一个计划在TX2板上运行我的tensorflow-gpu模型,并查看它们在其中的性能。这些模型在GTX GPU机器上进行了培训和测试。

在tx2板上,Jetpack full中没有张量流。所以需要构建/安装tensorflow,我已经看过并尝试了一些教程。我的python文件train.py和test.py期望tensorflow-gpu。

现在我怀疑,如果在tx2板上安装tensorflow-gpu是正确的方法?

哦,TX2上有Nvidia TensorRT,可以完成部分工作,但是如何?是吗?

tensorflow和tensorRT可以一起代替tensorflow-gpu吗?但是如何?那么我必须在训练和测试python文件中进行哪些修改?

我真的真的需要为tx2构建tensorflow吗?我只需要推断就可以在那儿不想做培训。

我研究了不同的博客,并尝试了几种选择,但现在情况有些混乱。

我的简单问题是:

通过使用在GTX机器上训练的TensorFlow-GPU深度学习模型在Jetson TX2板上完成推理的步骤是什么?

3 个答案:

答案 0 :(得分:1)

最简单的方法是安装NVIDIA提供的滚轮:https://docs.nvidia.com/deeplearning/dgx/install-tf-jetsontx2/index.html

JetPack已经安装了所有依赖项。

使用滚轮安装Tensorflow后,可以使用它,但是在其他平台上使用Tensorflow。要运行推理,您可以将Tensorflow模型下载到TX2内存中,然后在其中运行Tensorflow推理脚本。

您还可以通过将它们传递到TF-TRT来优化Tensorflow模型:https://docs.nvidia.com/deeplearning/dgx/integrate-tf-trt/index.html 只有一个API调用可以进行优化:create_inference_graph(...) 这将优化Tensorflow图(主要是通过融合节点),并允许您以较低的精度构建模型以获得更好的加速效果。

答案 1 :(得分:0)

我按照本指南在JetsonTX2上构建了tensorflow。它提供了适用于Python 2和Python3的说明和信息。

如果您不熟悉Jetson TX2,还请查看此“ 使用TensorRT和NVIDIA Jetson部署深度学习推理网络和深度视觉基元的指南” ” 。 (*因为Jetpack已经构建TensorRT,所以不需要安装tensorflow)

如果您有想要在Jetson上进行推断的tensorflow训练图,则需要首先安装tensorflow。然后,建议(不是强制性的)使用tensorRT优化训练后的模型。查看这些存储库以获取使用TensorRT优化的对象检测/分类示例。

答案 2 :(得分:0)

您可以在Nvidia开发人员论坛的此链接中找到适用于python 2.7和python 3.5的TX2的tensorflow-gpu wheel文件。

https://devtalk.nvidia.com/default/topic/1031300/jetson-tx2/tensorflow-1-8-wheel-with-jetpack-3-2-/