I’ve generated an Nsight Compute report for all of my kernels, including both single and double precision performance metrics. I’m looking to extract the data from the roofline plot generated by Nsight Compute in order to design a customized roofline plot for my project.
Specifically, I want to:
Extract the numerical data from the roofline plot for both single and double precision.
Merge the data from both single and double precision into a single plot (if possible), or combine them in a meaningful way to compare the performance across both precisions.
I’m wondering if anyone has experience with this process or can point me to the right tools or methods for extracting the relevant numbers from the Nsight Compute report and creating a customized roofline plot.
Any insights or suggestions would be greatly appreciated!
The first step you need to take is to find out which underlying metrics are used to calculate the performance and arithmetic intensity of the precisions you are interested. The simplest way to do this is to open your report in the NCU-UI, navigate to the details page and open the Metric Details window. Now you can navigate to a roofline plot of interest (expand the “GPU Speed Of Light Throughput” section and select “All” in the dropdown on the right) and click on the dot representing the achieved performance/arithmetic intensity. In the Metric Details window under “Additional Information” you will find a “Description” of the way these values are calculated from the metrics that are stored in the report.
As a next step you need to extract these metrics and calculate the achieved performance/arithmetic intensities you are interested in. There are several ways in which you can do that, but it is probably most convenient to use the Python Report Interface to both extract the metrics and calculate the data. Here’s a short demonstration on how this could look like:
In the same way as outlined for the achieved performance above, you can also click on the ridge points in the UI to see the way (and metrics) that are used to calculate the peak work/traffic.
Once you have all needed data calculated you can build your graph any way you’d like.