gpt4 book ai didi

cuda - CUDA 中clock() 和clock64() 的时钟测量是什么?

转载 作者:行者123 更新时间:2023-12-04 22:42:28 25 4
gpt4 key购买 nike

什么是时钟测量 clock()clock64()在 CUDA 中?

根据 CUDA documentation时钟是“每多处理器计数器”。根据我的理解,这是指主 GPU 时钟(不是着色器时钟)。

但是,当我测量时钟计数并使用主 GPU 时钟频率将其转换为时间值时,我得到的结果是实际值的两倍(我使用来自主机代码的内核执行时间使用 cuda 事件来测量实际值)。这表明 clock()返回着色器时钟频率而不是主 GPU 时钟。

我该如何解决这个困惑?

编辑 :
我通过将从 cudaGetDeviceProperties 获得的时钟频率除以 2 来计算主 GPU 时钟频率。据我了解 cudaGetDeviceProperties 给出的值是着色器时钟频率。

最佳答案

CUDA documentation确实如此说 clock()clock64()返回“每多处理器计数器”。但是在费米架构中是什么clock()clock64()实际上返回的是着色器时钟计数器。clockRate返回者 cudaGetDeviceProperties是着色器时钟频率。
所以要计算时间,我们必须将时钟计数与 clock() 相除。或 clock64()通过着色器时钟频率,您可以从 cudaGetDeviceProperties 获得.

关于cuda - CUDA 中clock() 和clock64() 的时钟测量是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27065862/

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