developing on/for the Jetson tx2

I have the Jetson tx2, and a windows machine (which only has an intel graphics adapter).
Can I write code on Visual Studio on the windows machine, and compile it on the tx2?

If not, what do I need to install on the tx2, in order to be able to write and compile directly on it?

I couldn’t tell you all of what you need, but the TX2 is quite capable of doing some compiling. You would use “nvcc” as a compiler on any of the Linux systems, which works well, but you won’t find some of the bigger GUI apps, e.g., Eclipse won’t be on the Jetson (and especially not the Nsight edition of Eclipse).

If you go to the “/usr/local/” directory, and if CUDA has been installed, then you will see a CUDA directory named after the release, e.g.:

/usr/local/cuda-10.0/

There would also be a symbolic link to this for whatever is considered a “default”, e.g.:

/usr/local/cuda

Within this is a “bin/” subdirectory, and this contains program “nvcc”, e.g.:

/usr/local/cuda-10.0/bin/nvcc

If you want something from here to be in your default command line search path, then typically you would add a symbolic link into “/usr/local/bin/”. Example:

cd /usr/local/bin
sudo ln -s ../cuda-10.0/bin/nvcc .

(that version of nvcc would be visible if “/usr/local/bin/” is in your search path, and for most people this is the case)

Incidentally, I think the “/usr/local/sample/” directory contains sample code if you installed that. This nvcc would be used to compile those.

“scp” can be used to copy files. You’d install an ssh client (not server) on your Windows machine.

this is not working cant see folder name cuda 10… too bad i purchased this jetson kit

The flash of the Jetson is one step, adding optional packages is the second step. JetPack/SDK Manager can be used for both. See this for the most recent version:
https://developer.nvidia.com/embedded/jetpack

Or this for different releases (which will use different CUDA versions):
https://developer.nvidia.com/embedded/jetpack-archive

Those URLs will probably require logging in to see the information, and since redirects do not work correctly, you may need to log there and then click the link a second time.

FYI, the version of JetPack which was used to flash with is integrated with the version of CUDA installed, and so you don’t want to have CUDA from a different version installed. If you run this command on the Jetson, then you will see the L4T release:

head -n 1 /etc/nv_tegra_release

Then the second URL for the list of JetPacks will show the associated L4T release. This is the one you would use for CUDA install.

The default for JetPack/SDK Manager is to flash, but you can uncheck this and uncheck installing to host PC and simply install CUDA to the Jetson. If you want to add more software, then you might still consider installing only CUDA to see how it works prior to trying to add other packages.

Unfortunately you will need a Linux PC to run JetPack/SDKM from. Typically VMs do not work, but in the case of only installing software and not flashing a VM might work without too much effort (flash can also work with a VM, but there is a learning curve and a lot of frustration with it).

Thank s alot for your efforts, i try to do nvprof and got this …what to do ’ do you have any sudo script ?

user1@user1-xavier:~/Downloads$ nvprof --print-gpu-trace ./vector_add_grid
==10591== NVPROF is profiling process 10591, command: ./vector_add_grid
==10591== Warning: Insufficient privileges to start the profiling session. Use root privileges
==10591== Profiling application: ./vector_add_grid
==10591== Profiling result:
No kernels were profiled.

I’m not sure of the sudo script, but if you are logged in to your regular user, directly to the GUI, does this work?

<b>sudo</b> nvprof --print-gpu-trace ./vector_add_grid

Tip: You can stay in a root shell a couple of ways. The one I use is:

sudo -s
# ...do work as root...
exit