У меня проблема с отладкой cuda kernal. Однако точки останова в функции Kernal никогда не достигаются. Я пытался удалить этот проект и заново сгенерировать с помощью CMake, но он все еще не работает. Ядро кода выглядит следующим образом:
__global__ void testKernel(int val)
{
printf("[%d, %d]:\t\tValue is:%d\n", \
blockIdx.y*gridDim.x + blockIdx.x, \
threadIdx.z*blockDim.x*blockDim.y + threadIdx.y*blockDim.x + threadIdx.x, \
val);
}
Я думаю, что проблема связана не с кодом ядра, а с конфигурациями этого проекта. Потому что этот ядро может быть отлажено в проектах CUDA Samples.
Я использую Debug
-> Windows
-> Modules
и нахожу, что моя цель .lib
не загружена. Когда я выбираю CUDA Thread
, Break Mode
показывает:
Ваше приложение перешло в состояние останова, но в настоящее время не выполняется код, поддерживаемый выбранным механизмом отладки (например, только собственный код времени выполнения) выполняется).