clGetEventProfilingInfo()时间戳是否已同步?

时间:2012-08-23 16:01:59

标签: opencl performance-testing multi-gpu

我正在尝试使用clGetEventProfilingInfo()在多GPU环境中分析代码,但我认为我无法关联来自不同GPU的时间戳。一个简单的code sample使用两个GPU比使用一个GPU快两倍,但时间戳表明一个GPU在另一个GPU开始之前执行了大部分工作。

[spec] http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clGetEventProfilingInfo.html)只是说,这样的时间戳是“64位值,用于描述当前设备时间计数器,单位为纳秒[...]”

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


供参考:

  • 我使用两个NVIDIA GTX 580和NVIDIA驱动程序版本295.40,Linux内核2.6.35
  • 我已在Khronos forums处提出此问题,但尚未收到回复。

1 个答案:

答案 0 :(得分:0)

规范还说“OpenCL设备需要正确跟踪设备频率和电源状态变化的时间。”这意味着返回的时间仅相差两个设备之间的常数,并且每个设备之间的“实际”挂钟时间。