clGetEventProfileInfo()时间戳是否同步



我正在尝试用clGetEventProfilingInfo()在多GPU环境中评测代码,但在我看来,我无法关联来自不同GPU的时间戳。一个简单的代码示例使用两个GPU的速度是使用一个GPU的两倍,但时间戳表明,一个GPU在另一个GPU启动之前执行了大部分工作。

[规格]http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clGetEventProfilingInfo.html)只是说,这样的时间戳是"一个64位值,以纳秒为单位描述当前设备时间计数器[…]"

我是否必须假设这些不必同步?


FYI:

  • 我使用的是两个NVIDIA GTX 580和NVIDIA驱动程序版本295.40,Linux内核2.6.35
  • 我已经在Khronos论坛上问过这个问题,但还没有得到回复

该规范还规定"OpenCL设备需要正确跟踪设备频率和电源状态变化的时间。"这意味着返回的时间在两个设备之间以及每个设备与"真实"挂钟时间之间仅相差一个常数。

相关内容

  • 没有找到相关文章

最新更新