1

今天是个好日子!

我在 TensorRT 中执行批量推理时遇到问题。当批量大小为 1 时,它就像一个魅力,但是当我将它更改为任何其他数字时,它会发出普通的垃圾。

一步一步地,我下载了 TensorRT (5.0) 并将其安装在我的 Ubuntu 18.04 笔记本电脑上,带有 GTX755M。然后我构建了与之配套的样本,并在 sampleMNIST 样本上对其进行了测试,它就像一个魅力。然后我开始将每次出现的次数更改mParams.batchSize为 10。当然,我还更改了分配内存的大小并修改了结果打印。但是在我重新编译样本后,我得到了完全奇怪的结果——对于每个给定的输入,输出都显示为 80% 7 20% 1:

grim@shigoto:~/tensorrt/bin$ ./sample_mnist
Building and running a GPU inference engine for MNIST

Input:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@.*@@@@@@@@@@
@@@@@@@@@@@@@@@@.=@@@@@@@@@@
@@@@@@@@@@@@+@@@.=@@@@@@@@@@
@@@@@@@@@@@% #@@.=@@@@@@@@@@
@@@@@@@@@@@% #@@.=@@@@@@@@@@
@@@@@@@@@@@+ *@@:-@@@@@@@@@@
@@@@@@@@@@@= *@@= @@@@@@@@@@
@@@@@@@@@@@. #@@= @@@@@@@@@@
@@@@@@@@@@=  =++.-@@@@@@@@@@
@@@@@@@@@@       =@@@@@@@@@@
@@@@@@@@@@  :*## =@@@@@@@@@@
@@@@@@@@@@:*@@@% =@@@@@@@@@@
@@@@@@@@@@@@@@@% =@@@@@@@@@@
@@@@@@@@@@@@@@@# =@@@@@@@@@@
@@@@@@@@@@@@@@@# =@@@@@@@@@@
@@@@@@@@@@@@@@@* *@@@@@@@@@@
@@@@@@@@@@@@@@@= #@@@@@@@@@@
@@@@@@@@@@@@@@@= #@@@@@@@@@@
@@@@@@@@@@@@@@@=.@@@@@@@@@@@
@@@@@@@@@@@@@@@++@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Output:

0: 
1: ********
2: 
3: 
4: 
5: 
6: 
7: **
8: 
9: 

此输出重复 10 次。我已经用不同的网络尝试过这个,但结果相似,大多数网络给出 1 个正确的输出,其他 9 次是纯垃圾。完整的示例可以在这里找到。我试过谷歌搜索文档,但我不明白我做错了什么。您能否告诉我我做错了什么或如何在 TensorRT 中执行批量推理?

4

1 回答 1

0

你也修改了mnist.prototxt

特别是这部分:

input: "data"
input_shape {
  dim: 1
  dim: 1
  dim: 28
  dim: 28
}

我认为应该是:

input: "data"
input_shape {
  dim: 10
  dim: 1
  dim: 28
  dim: 28
}
于 2018-11-21T13:27:11.410 回答