gpt4 book ai didi

cudaEvent 和 gettimeofday 报告的时间截然不同

转载 作者:行者123 更新时间:2023-11-30 20:26:39 24 4
gpt4 key购买 nike

我正在尝试使用 gettimeofday 或 cudaEventRecord 来计时循环。然而,他们报告的结果截然不同。这是伪代码:

// get time here (start) 
while (..)
{
. ..
}
// get time here (stop)
// calculate time
// time = (stop.tv_usec-start.tv_usec)*1.0e-3 + (stop.tv_sec - start.tv_sec); or
// cudaEventElapsedTime(&time,start,stop);

我没有同时使用它们,而是分别使用它们,结果并不相同。使用 cudaEvent 时我还调用了 cudaEventSynchronize(stop) 。谢谢。

最佳答案

我发现测量单位有问题。我不太懂 cuda 程序员,但我可以讲一下 gettimeofday 函数。 gettimeofday 表示以秒和微秒为单位的时间,因此正确的伪代码行是:

// time = (stop.tv_usec-start.tv_usec)*1.0e-6 + (stop.tv_sec - start.tv_sec);

这里给出了cuda特定的解决方案:Timing CUDA operations 。 我希望这有帮助。

关于cudaEvent 和 gettimeofday 报告的时间截然不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24968378/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com