I am running my program using nvprof to get profile information using the command:
nvprof -o profileOutput -s ./exe args
I wanted information about warp divergence, coalesced read/write, occupancy etc. But when I open the file profileOutput, its in some other format altogether and have weird symbols like @^@^.....
I am opening the file in vim. What is the correct way to see profile information of a CUDA program. Please help.
The nvprof profiling tool collects and views profiling data from the command-line. It enables the collection of a timeline of CUDA-related activities on both CPU and GPU , including kernel execution, memory transfers, memory set and CUDA API calls and events or metrics for CUDA kernels.
Nvprof is a command-line light-weight GUI-less profiler available for Linux, Windows, and Mac OS. This tool allows you to collect and view profiling data of CUDA-related activities on both CPU and GPU, including kernel execution, memory transfers, etc.
Profiling Overview The Visual Profiler is a graphical profiling tool that displays a timeline of your application's CPU and GPU activity, and that includes an automated analysis engine to identify optimization opportunities. The nvprof profiling tool enables you to collect and view profiling data from the command-line.
You don't need -s
because it is the default situation by itself.
-o
specifies the output file which can be imported later or open by Nvidia visual profiler, which is not human readable.
If you need to compute occupancy you can use this occupancy calculator provided by Nvidia. There's an article about it.
If you need to trace branches you can use profiling in trace mode and trace branches.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With