PyCUDA内核计时错误

1 投票
1 回答
515 浏览
提问于 2025-04-16 15:58

这很简单

start=cuda.Event()
func(args,block=blockdims)
cuda.memcpy_dtoh(d,h)
end=cuda.Event()

dur=start.time_till(end)
print dur

但是我遇到了这个错误

File "gpu.py", line 161, in gpu_test
    dur=start.time_till(end)
pycuda._driver.LogicError: cuEventElapsedTime failed: invalid handle

根据我从文档中了解到的,这应该是正确的用法。有没有人知道我哪里出错了?

1 个回答

1

看看这个链接:SimpleSpeedTest.py

start=cuda.Event()
end=cuda.Event()

start.record() # start timing
func(args,block=blockdims)
cuda.memcpy_dtoh(d,h)
end.record() # end timing
# calculate the run length
end.synchronize()
millis = start.time_till(end)
print millis

撰写回答