Как мне предотвратить cuda-GDB от оптимизации любого значения (будь то устройство или хост, локальный или глобальный)? Я проверил форумы nvidia, но большинству из них уже несколько лет, и, похоже, нет решения для старых версий cuda, но есть ли решение для самых новых (cuda 9.2 и sm 61)?
Я использую флаги описано в документации nvidia:
-g
— «Создать отладочную информацию для кода хоста».
-G
— «Создать отладочную информацию для кода устройства. Отключает все оптимизации. Не используйте для профилирования; используйте вместо этого -lineinfo».
Как я могу предотвратить cuda-GDB от оптимизации любого значения
cuda-gdb
является не оптимизировать что-либо; это просто интерпретация отладочной информации, которую компилятор (nvcc
) положить в двоичный файл.
Если компилятор решил не описывать расположение какой-либо переменной, то ничего нет cuda-gdb
можно сделать, чтобы восстановить эту информацию. Обычно это проблема качества отладочной информации при nvcc
,
Возможно, что nvcc
сделал опишите местоположение, которое вы ищете, но cuda-gdb
не в состоянии обработать это описание, в этом случае это ошибка в cuda-gdb
,
В любом случае, вы ничего не можете с этим поделать, кроме как жаловаться в NVidia.
Других решений пока нет …