У меня есть программа CUDA, что я профилирование на трех машинах:Nvidia Визуальная демонстрирующая Profiler вычисления смещения GPU/CPU
- Windows 7 рабочих станций с GeForce GTX 690 GPU.
- Windows 7 ноутбук с NVS 5200M gpu.
- Рабочая станция Fedora 19 с GeForce 690 GTX gpu.
Первый компьютер (рабочая станция Windows 7) использует GeForce 690 в качестве основной карточной карты (в дополнение к обработке CUDA). Последние две машины (Windows-ноутбук и рабочая станция Linux) используют другие графические карты для визуализации изображений (встроенная графика в случае ноутбука и нижней платы ATI для рабочей станции Linux).
Я скомпилировал ту же программу (со всеми установленными флагами компилятора CUDA) на всех трех платформах и использую nvvp для профиля. В сроки машин # 2 и # 3, что я бы ожидать:
Windows 7 Ноутбук
Linux Workstation
Однако, профилирование сроки для рабочих станций Windows, очень отличается:
Рабочая станция Windows 7
Я не знаю, как и почему это произошло, но вычисления процессора и графического процессора, похоже, не синхронизированы (по крайней мере, насколько это касается профайлера). Может ли это иметь какое-то отношение к рабочей станции Windows 7, не имеющей дополнительной графической карты, предназначенной для графики?
Известна проблема в драйверах CUDA 5.0/5.5, что синхронизация времени GPU отключена для устройств в SLI-группах. Все устройства в SLI-группе будут использовать смещение для первого устройства в перекосе группы между графическими процессорами, которые не будут исправлены. Если вы используете SLI, отключите режим SLI в панели управления NVIDIA и посмотрите, устраняет ли это проблему. Это может быть исправлено в последних драйверах дисплея NVIDIA. –
Yup, отключив SLI, сделал трюк. Спасибо. – rmccabe3701