Когда я пытаюсь отладить произвольное приложение CUDA, например, Образец умножения или скручивания матрицы из Nvidia GPU Computing SDK 4.0 всегда выдает результат, подобный следующему:
Parallel Nsight Debug
CUDA grid launch failed: CUcontext: 2059192 CUmodule: 348912936 Function: _Z9matrixMulILi32EEvPfS0_S0_ii
……
……
И появляется файл со следующим содержанием:
Parallel Nsight CUDA Debugger
Приложение, отлаживаемое с помощью отладчика Nexus CUDA, не смогло
найти любой связанный источник. Это может быть по ряду причин:
1) CUDA не инициализирован.
Убедитесь, что cuInit был вызван, и он вернул успешный результат.
2) Контексты CUDA не созданы.
Как только контекст создан, память может быть исследована в контексте. Каждый контекст
отображается как один «поток» в представлении потоков Visual Studio. (Отладка | Windows | Потоки)
3) Нет активных сеток CUDA ни в каком контексте.
Для достижения контрольных точек должна быть запущена сетка.
4) Вы выбрали «Контекст по умолчанию» в представлении «Темы Visual Studio».
Этот контекст является заполнителем, показанным, когда нет доступных фактических CUDA
контексты. Он не показывает реальные данные.
5) Модули CUDA не загружены.
Вы можете увидеть, какие модули загружены в каждом контексте CUDA, показав
Виды модулей Visual Studio. (Отладка | Windows | Модули)
6) Символики не найдены для загруженного .cubin.
Модуль должен быть собран с отладочной информацией. Пожалуйста, укажите
-G0 переключатель при сборке.
7) Ошибка запуска сетки при работе ядра.
Каждая точка останова в соответствующем файле .cu полностью игнорируется во время выполнения. Когда я просто запускаю приложение без Nsight Debugging, программа выполняется без проблем.
Что я могу сделать, чтобы решить эту проблему?
Моя настройка:
- 1xIntel GPU и 1x NV 570GTX, я хочу использовать опцию локальной отладки
- Win 7. Pro 64Bit
- Dev Env .: VS2008 или VS2010
- CUDA 4.0 & Parallel Nsight 2.0
- Версия драйвера NV: 285,38
- WPF отключен
- TDR отключен
- Windows работает в базовом режиме (без аэро)
- Свойства проекта: Cuda Runtime API -> GPU-> Создать отладочную информацию GPU -> Да (-G0)