Как запустить отладочную версию проекта в nsight с помощью команды optirun?

Я писал какую-то простую программу cuda (я студент, поэтому мне нужно потренироваться), и дело в том, что я могу скомпилировать ее с помощью nvcc из терминала (используя Kubuntu 12.04LTS), а затем выполнить ее с помощью optirun ./a.out (Hardver GeForce GT 525 м на Dell Inspiron) и все работает отлично. Главная проблема в том, что я ничего не могу сделать из Nsight. Когда я пытаюсь запустить отладочную версию кода, появляется сообщение "Ошибка запуска! Двоичные файлы не найдены!". Я думаю, что это о запуске команды с optirun, но я не уверен. Какие-нибудь подобные события? Спасибо, что помогли заранее, ребята.:)

3 ответа

Решение

Поскольку это был первый пост, который я нашел при поиске "nsight optirun", я просто хотел записать шаги, которые я предпринял, чтобы он работал на меня.

  1. Перейдите в Выполнить -> Конфигурации отладки -> Отладчик

  2. Найдите текстовое поле для исполняемого файла CUDA GDB (в моем случае оно было установлено как "${cuda_bin}/cuda-gdb")

  3. Добавьте "optirun --no-xorg", в моем случае это был "optirun --no-xorg ${cuda_bin}/cuda-gdb"

Параметр --no-xorg может не потребоваться или даже привести к обратным результатам, если у вас есть окно OpenGL, так как оно предотвращает появление чего-либо из этого. Однако для моего научного кода это необходимо, так как это мешает мне запустить таймауты ядра.

Удачной охоты на жуков.

  1. Мы протестировали Nsight на системах Optimus без optirun - см. "Установка набора инструментов cuda" в наборе инструментов CUDA. Начало работы с использованием набора инструментов CUDA в системе Optimus. Мы не пробовали optirun с Nsight EE.
  2. Если вам все еще нужно использовать optirun для отладки, вы можете попробовать создать сценарий оболочки, который использует optirun для запуска cuda-gdb, и установить этот сценарий оболочки как исполняемый файл cuda-gdb в свойствах конфигурации отладки.

Самое простое, что нужно сделать - запустить eclipse с помощью optirun, который также будет правильно запускать ваше приложение.

Другие вопросы по тегам