как предотвратить & lt; оптимизацию & gt; значения в cuda-gdb

Как мне предотвратить cuda-GDB от оптимизации любого значения (будь то устройство или хост, локальный или глобальный)? Я проверил форумы nvidia, но большинству из них уже несколько лет, и, похоже, нет решения для старых версий cuda, но есть ли решение для самых новых (cuda 9.2 и sm 61)?

Я использую флаги описано в документации nvidia:

-g — «Создать отладочную информацию для кода хоста».

-G — «Создать отладочную информацию для кода устройства. Отключает все оптимизации. Не используйте для профилирования; используйте вместо этого -lineinfo».

3

Решение

Как я могу предотвратить cuda-GDB от оптимизации любого значения

cuda-gdb является не оптимизировать что-либо; это просто интерпретация отладочной информации, которую компилятор (nvcc) положить в двоичный файл.

Если компилятор решил не описывать расположение какой-либо переменной, то ничего нет cuda-gdb можно сделать, чтобы восстановить эту информацию. Обычно это проблема качества отладочной информации при nvcc,

Возможно, что nvcc сделал опишите местоположение, которое вы ищете, но cuda-gdb не в состоянии обработать это описание, в этом случае это ошибка в cuda-gdb,

В любом случае, вы ничего не можете с этим поделать, кроме как жаловаться в NVidia.

1

Другие решения

Других решений пока нет …