怎么用tensorRT跑训练好的caffe
1、TensorRT简介
TensorRT目前基于gcc4.8而写成,其独立于任何深度学习框架。对于caffe而言,TensorRT是把caffe那一套东西转化后独立运行,能够解析caffe模型的相关工具叫做 NvCaffeParser,它根据prototxt文件和caffemodel权值,转化为支持半精度的新的模型。

2、以Jetson TX1为例,看看官方自带的例程是如何运行的。自带例程的地址是:/usr/src/gie_samples/samples,我们打开文件夹。
其中,data文件夹存放LeNet和GoogleNet的模型描述文件和权值,giexec文件夹是TensorRT通用接口的源代码,剩下的文件夹是特定网络的接口源代码。Makefile是配置文件,在gie_sample文件夹位置打开终端,输入sudo make就能完成编译,生成一系列可执行文件,存放在bin文件夹中,那我们就来看看bin文件夹的内容。

3、首先,在打patch之前需要做两件事,一个是确认未打patch之前训练测试是没有问题的,二最好先做好备份,以防止打patch过程中出现问题无法修复。 以下是几个重要步骤: 1. cd到caffe根目录下,执行命令make clean,将之前编译好的build等文件删除 2. 用git am $PATH/fpga.8-bit..patch命令尝试是否能进行打patch.

4、3. 如果不能通过上一个命令打,报这个错误:Patch format detection failed,那直接用patch命令:’patch -p1 < fpga.8-bit.train.2017-11-07.patch’ 4. 如果得到以下输入,则说明大部分成功了, 有两处失败;(图片在youdaoimage笔记里)

5、5. 需要手动改一下 src/caffe/proto/caffe.proto ,在message LayerParameter { }的最后加上如下3行. // FPGA Quantization Parameter optional QuantizationParameter quantization_param = 6000; // add by liyupeng03 手动把src/caffe/proto/caffe.proto.rej 里的东西加到caffe.proto 6. 把Makefile.config.rej里的东西加到Makefile.config中 7. 然后切到caffe的根目录下,重新make all编译
