2012-08-23 3 views
1

clGetEventProfilingInfo()으로 멀티 GPU 환경에서 코드를 프로파일하려고하는데 다른 GPU의 타임 스탬프를 서로 연관 짓지 못하는 것 같습니다. code sample은 두 GPU를 사용하는 것보다 두 배 빠릅니다.하지만 타임 스탬프는 한 GPU가 다른 GPU가 시작되기 전에 대부분의 작업을 실행했다는 것을 보여줍니다.clGetEventProfilingInfo() 타임 스탬프가 동기화 되었습니까?

에서 [사양] http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clGetEventProfilingInfo.html)은 바로 그러한 타임 스탬프"나노초 [...]의 현재 기기 시간 카운터를 설명하는 64- 비트 값"이라고 말한다.

이들을 동기화 할 필요가 없다고 가정해야합니까? 참고로


:

  • 내가 NVIDIA 드라이버 버전 295.40 두 개의 엔비디아 GTX 580를 사용하고, 나는 이미 Khronos forums에 이상이 질문을하지만를받지 못한 2.6.35
  • 리눅스 커널 답장을 보내라.
+0

어떻게 동기화합니까? – eldos

답변

0

"OpenCL 장치는 장치 주파수 및 전원 상태의 변경에 따라 시간을 올바르게 추적해야합니다." 반환 된 시간은 두 장치 사이의 상수와 각 장치와 "실제"벽시계 시간 사이에서만 차이가 있음을 나타냅니다.

+0

이 부분은 장치가 주파수 나 상태를 변경하면 다른 장치와 상관없이 시간을 올바르게 추적 할 수 있어야 함을 의미합니다. – matthias

관련 문제