TensorRT-Alpha icon indicating copy to clipboard operation
TensorRT-Alpha copied to clipboard

结果发生越界问题

Open Ichiruchan opened this issue 1 year ago • 4 comments

和其他人员的项目联调时发生了, 企业微信截图_1715599680997 越界的错误。m_output_objects_host + bi * (m_param.topK * m_output_objects_width + 1))[0]是个十分大的数,导致int后为-46,用size_t接住查看为 18446744073709551570。但是单独执行我的项目时,无越界状况发生,这种情况下如何判断

Ichiruchan avatar May 13 '24 11:05 Ichiruchan

@Ichiruchan 把越界时,那几个变量全部打印出来,同时把图片缓存下,单独调试,很可能是前面的问题导致m_output_objects_host值异常

FeiYull avatar May 16 '24 02:05 FeiYull

我将图片缓存了下来然后立即读取,在完整的合作项目中会发生越界,而存下来的图在单独的ai推理项目中正常执行且整套流程应该是没有并行的租借读写显存的

Ichiruchan avatar May 17 '24 07:05 Ichiruchan

查到问题所在了,我这里由于每次推理的图片大小不一致,yolo对象是多次构造析构的,相当于yolo.reset()并没有用,导致AtomicAdd加在了一个随机值上,(虽然我不明白为什么第一次cudaMalloc的时候没有发生这种问题?)

Ichiruchan avatar Jun 05 '24 07:06 Ichiruchan

查到问题所在了,我这里由于每次推理的图片大小不一致,yolo对象是多次构造析构的,相当于yolo.reset()并没有用,导致AtomicAdd加在了一个随机值上,(虽然我不明白为什么第一次cudaMalloc的时候没有发生这种问题?)

想请教下,您是如何解决的,我现在也碰到这个问题了,我的reset也没有调用,但是我写了。

Bruce-WangGF avatar Dec 12 '24 14:12 Bruce-WangGF