Отладка CUDA - VS на рабочей станции Windows, графические процессоры на сервере Linux? - PullRequest
2 голосов
/ 06 апреля 2011

Кто-нибудь имел опыт отладки кода CUDA на сервере во время кодирования на рабочей станции?

Мой ноутбук (Thinkpad T400) не поддерживает CUDA, но у меня есть доступ к серверу с парой карт NVIDIA GTX 295, на которых работает Linux.

Можно ли использовать инструменты NVidia Visual Studio для удаленной отладки на сервере?

В противном случае на моем ноутбуке работает виртуальная машина Ubuntu. Есть ли отладчик, который я могу использовать в Linux для отладки на сервере?

Я действительно не хочу покупать другой ноутбук с двумя картами NVidia.

Ответы [ 2 ]

3 голосов
/ 07 апреля 2011

Разработка в c на удаленной машине linux (например, на вашем сервере) довольно распространена. Вы можете подключиться к серверу с любого клиента (например, с вашего ноутбука) на сервере, чтобы скомпилировать и запустить код так же, как если бы вы сидели за компьютером, и вы можете использовать gdb для отладки кода в терминале. , Вы также можете использовать ddd в качестве графического интерфейса для GDB или Linux IDE, например, eclipse , перенаправив X11 поверх ssh.

Вы можете использовать cuda-gdb для отладки вашего кода CUDA в терминале точно таким же образом. К сожалению, пока нет визуального отладчика CUDA для Linux. Однако, похоже, вы можете использовать ddd с cuda-gdb [source] , так как у вас есть два gpus. Я не уверен, что использует cuda-gdb в затмении .

2 голосов
/ 06 апреля 2011

Да, вы можете, но вам нужно купить Parallel Nsight Studio от Nvidia После установки на удаленном компьютере NsightDebugServer вы можете загружать и отлаживать программы с ваш ноутбук без куды.

Обновление

Получается. Для этого решения требуется сервер WINDOWS, чтобы запустить NsightDebugServer.

Чтобы подключиться к Linux-машине с вашего ноутбука, используйте удаленное подключение. установите putty и Xserver для windows и просто войдите с ssh -X username @ cudaserver. Среда не будет такой красивой, как Visual Studio, но вы можете выполнить основные этапы отладки.

Eclipse "может" иметь некоторую поддержку удаленных серверов GDB. Никогда не экспериментировал с этим (мне достаточно Emacs + gdb)

...