Xavier GPU resources monitor


Can someone suggest how to track GPU resources in as much detail as possible. I would like to know which process takes up how much memory and track the load from the dla.

Thanks in advance!

Hi steve.trofimov,

Please use the tegrastats utility on Jetson.

Start it running as:

sudo ~/tegrastats

Thanks for your reply!

Is it possible to get more information than with the tegrastats command?

You should use the NSight tools. Start with NSight systems and dig down with NSight compute where necessary.

The NSight tools are executed on a host, that has e.g. network connection to the jetson. If you used the SDK Manager to setup the jetson, the tooling is probably already installed on the host.

Thanks for your reply!

I would also like to see the distribution of resources within the GPU, since I would like to improve performance, and for this I would like to understand what is best for me - to use an accelerator or not. I’ve seen that for some tasks, using an accelerator slows down the computation speed. Are there any ideas or knowledge on this?

thanks in advance

This page contains a table with some numbers that could help you quantify the performance from each DLA / GPU: https://developer.nvidia.com/deepstream-sdk

You can use both DLAs and the GPU at the same time to get maximum performance. The DLAs are slower but much more energy efficient for the same performance.

I find the tegrastats very problematic to say the least. You can see 100% in the GPU stats when your code is actually written badly - performance wise.
I found the easiest way to analyze the performance, is to run my application on Xavier like this:
nvprof -f -o xx.nvvp
Open the resulting .nvvp file on a desktop/laptop (i.e. not on Xavier) with nvvp and see the timeline, kernel statistics, kernel names etc…


Thanks a lot, this solved my problem!