#c #c #cuda #nsight
#c #c #cuda #nsight
Вопрос:
Я использую NSight для отладки моего кода CUDA, и у меня возник вопрос: как я могу установить точку останова для определенного потока и блока?
Когда я устанавливаю точку останова в ядре, отладчик всегда останавливается в потоке 0 блока 0.
Ответ №1:
Как описано в интерактивной справке в Nsight, вы можете установить точку останова и сделать ее зависимой от идентификатора блока и потока следующим образом:
Чтобы задать условие блока или потока для точки останова CUDA C:
- Установите точку останова в строке исходного кода.
- Щелкните правой кнопкой мыши на точке останова.
- В выпадающем меню выберите Условие…
-
Тип:
@blockIdx(0,2,0) amp;amp; @threadIdx(5,0,0)
-
Нажмите OK. Глиф точки останова показывает знак плюс.
Ответ №2:
попробуйте использовать фокус отладки CUDA. вы можете отлаживать любой поток в любом блоке, который вы хотите…