2016-02-12 10 views
-2

Я хотел бы отладить код CUDA в Linux. Однако я столкнулся с ошибкой, которая связана с тем, что X11 не может делиться графическим процессором с визуальным отладчиком NSight с использованием Eclipse Nsight. Однако сегодня я натолкнулся на это.Отладка CUDA в NSight Eclipse в Linux

3.4.2. Отладка одного GPU с помощью Desktop Manager Запуск

CUDA-GDB может использоваться для отладки приложений CUDA на том же графическом процессоре, что и работает под управлением графического интерфейса пользователя.

Примечание. Это функция BETA, доступная на Linux и поддерживающая устройства с возможностью вычисления SM3.5. Есть два способа включить эту функциональность:

Используйте следующую команду: набор Cuda software_preemption на Экспортируйте следующую переменную окружения: CUDA_DEBUGGER_SOFTWARE_PREEMPTION = 1 либо из перечисленных выше опций будет активировать программное обеспечение упреждения. Эти параметры должны быть установлены перед запуском приложения. Когда GPU попадает в точку останова или любое другое событие, которое обычно заставляет замораживать GPU , CUDA-GDB выпускает графический процессор для использования на рабочем столе или других приложениях . Это позволяет CUDA-GDB отлаживать приложение CUDA на одном и том же графическом процессоре, на котором запущен графический интерфейс рабочего стола, а также позволяет отлаживать нескольких контекстных переключений приложений CUDA на одном и том же графическом процессоре.

Примечание. Параметры, перечисленные выше, игнорируются для графических процессоров с вычислительной мощностью менее SM3.5.

Отсюда: http://docs.nvidia.com/cuda/cuda-gdb/index.html#single-gpu-debugging-with-desktop-manager-running

Вопрос:

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

Хорошо ли работает?

Моя платформа Centos 7.0, Intel 64-бит.

ответ

0

У меня есть карта, так или иначе, в CentOS 7 работает хорошо. Там происходит некоторое замедление, когда оно входит в ядро, но оно делает то, что я хотел. Я вижу значения переменных внутри ядра.

Одна вещь, хотя на сегодня 18/2/2016, я не могу нажать «остановить» при отладке ядер. Он висит на всей системе. Ну, он сказал, что это бета-функция.

Смежные вопросы