现象:
用caffe time测试网络结构,前向传播是 8 ms左右,
实际集成后运行的时候,forward耗时大概4-5ms。
输入大小是一致的。
于是开始查这个问题。
最后定位到,差别在proposal层的sort_box函数。caffe time的耗时明显比集成的多3ms左右。
sort_box 用来对产生的候选框排序。用的算法是qsort。
打印出里面的数据,发现,caffe time测试的时候,里面都是0。实际的数据并不是0.
所以,qsort 对全0的运行速度,大概是O(n2)的时候,最坏复杂度了。
时间差别在这里。
oh yeah