CUDA Debugging - VS on windows workstation, GPUs on Linux server?
Has anyone had any experience debugging CUDA code on a server while coding on a workstation?
开发者_开发知识库My laptop (Thinkpad T400) doesn't support CUDA, but I have access to a server with pair of NVIDIA GTX 295 cards that runs Linux.
Can I use NVidia's Visual Studio tools to debug remotely on the server?
Failing that, I also have an Ubuntu VM running on my laptop. Is there a debugger that I can use under Linux to debug on the server?
I really don't want to have to buy another laptop with dual NVidia cards.
Developing in c on a remote linux machine (like your server) is quite common. You can ssh onto the server from any client (like your laptop) to compile and run the code just as you would if you were sitting at the machine, and you can use gdb to debug your code in a terminal. You can also use ddd as a graphical front end to gdb or a linux IDE such as eclipse by forwarding X11 over ssh.
You can use cuda-gdb to debug your CUDA code in a terminal in exactly the same way. Unfortunately, there is not a visual cuda debugger for linux yet. However, it appears you can use ddd with cuda-gdb [source], as you have two gpus. I'm not sure about using cuda-gdb in eclipse.
Yes you can but you need to buy the Parallel Nsight Studio from Nvidia After installing on the remote machine the NsightDebugServer you can upload and debug programs from your cuda-less laptop.
Update
Turns out This solution requires a WINDOWS server in order to run the NsightDebugServer.
To connect to the linux machine from your laptop, use a remote connection. install putty and a Xserver for windows and just login with ssh -X username@cudaserver. The environment would not be fancy as Visual Studio but you can do the basic steps of debugging.
Eclipse "might" have some support for remote gdb servers. Never experimented that (Emacs + gdb is sufficient for me)
精彩评论