5

This is my scenario. I program my CUDA application on windows machine. I compile and run this application on remote linux (Debian) server (without graphical output) using putty.

I want to ask what is the best way to debug and profile my application. I read something about Nvidia product Parallel Nsight and Parallel Nsight Monitor. Is this the (only) way?

stuhlo
  • 1,479
  • 9
  • 17

3 Answers3

1

You can use Cuda command line profiler (http://docs.nvidia.com/cuda/profiler-users-guide/index.html#compute-command-line-profiler-overview) You need to export few environment variables and the driver will generate trace file with CUDA calls of your program. After you can import this file in Nvidia Visual Profiler and browse it under Windows.

Also you can forward X over ssh with some X server and run profiler on the linux machine, but i do not recommend doing it if you and remote machine are not in the same network )

ShPavel
  • 962
  • 1
  • 10
  • 17
  • You can also start a VNC server from the command line, and then connect to that with a remote VNC client. That allows you to run X programs on the remote machine even without having root access. – tera Apr 26 '13 at 15:18
  • Nxclient is by far the best way to work on a remote Linux server. – talonmies Apr 26 '13 at 15:23
1

Allinea DDT can handle debugging CUDA applications in exactly this situation: either via X-forwarding, or via a remote mode. In remote mode you will debug the application running on your Linux CUDA machine with the debugging user interface running on your Windows machine. The source code being either on the Windows side, or Linux side - whichever is right for your situation.

The profiling tool Allinea MAP does not provide any CUDA instrumentation but can give you a good overview of how your application as a whole is behaving, including time spent waiting for CUDA kernels to finish.

David
  • 756
  • 5
  • 10
1

Using Nsight Eclispe Edition 6.0 running, debugging and profiling of CUDA application on remote machine have become very comfortable and easy. Everything works on one-click. To be able to use remote debugging CUDA SDK of version 5.5 and remote profiling version 6.0 are necessary on the remote machine.

Details can be found in Nsight Eclipse documentation.

stuhlo
  • 1,479
  • 9
  • 17