Отладка OpenCL с помощью NVIDIA Nsight 2.1 и Visual Studio 2010

Насколько я знаю, Nvidia Nsight 2.1 дает возможность отлаживать код OpenCL. Я выполнил все требования Nsight Monitor (отключить WDDM, отключить aero, установить драйверы для разработки, подключить вторую видеокарту), но я все еще не могу отлаживать свой код.

Использование «Начать отладку CUDA» в VS 2010 заканчивается уведомлением:

Контекст CUDA был создан на графическом процессоре, который в настоящее время не поддается отладке. Точки останова будут отключены.

Адаптер: GeForce GTX 590

Мое решение на C++ было создано с помощью cmake, и я не добавлял в свое решение исходные коды ядра (*.cl). Мое приложение читает исходники ядра из файла и компилирует их. Итак, как я могу установить точки останова в своих ядрах?


person Krzysztof Bzowski    schedule 28.02.2012    source источник


Ответы (3)


Parallel Nsight 2.1 поддерживает трассировку OpenCL 1.1 с помощью Nsight > New Analysis Season.

Parallel Nsight 2.1 CUDA Debugger не поддерживает отладку ядер OpenCL на уровне исходного кода. Отладка на уровне исходного кода поддерживается только для ядер CUDA, запущенных через CUDA Runtime API и CUDA Driver API.

person Greg Smith    schedule 29.02.2012

Нет, NVIDIA Nsight не имеет возможности отлаживать код OpenCL, NVIDIA не поддерживает отладку на уровне исходного кода для ядер OpenCL. NVIDIA поддерживает только отладку ядер CUDA или DirectX11 DirectCompute, но не OpenCL.

Вместо этого вы можете рассмотреть AMD или Intel. AMD CodeXL позволяет добавлять точки останова в ядра OpenCL даже при их запуске на графическом процессоре.

person Erwin Coumans    schedule 22.12.2012

вам нужно две графические карты, чтобы использовать Nsight для отладки

person perise    schedule 28.02.2012
comment
Как я уже упоминал ранее - я подключил монитор ко второй карте. Это был Intel HD2000. - person Krzysztof Bzowski; 28.02.2012