The statistics tab gives detailed statistics about the
selected shader for each target device.
To open the statistics tab expand the desired shader in the project tree, and
double-click the statistics node:
There is no support for shader statistics for v5 and earlier generation devices.
Statistics page for GCN devices (v6 and later generations):
The displayed information is explained in the following table:
Column Name |
Explanation |
SGPRs |
The number of scalar General Purpose Registers allocated by the shader |
VGPRs |
The number of vector General Purpose Registers allocated by the kernel. ReqdWorkGroupX - Required workgroup X size specified for kernel. N/A without optional __attribute__((reqd_work_group_size(X, Y, Z))) |
ISA size |
Compiled code size |
Scratch Registers |
The number of scratch registers used by the kernel. If this value is bigger than 0, the shader may be incurring a performance penalty |
MaxSGPRs |
The maximum number of scalar General Purpose Registers per kernel supported by the device |
MaxVGPRs |
The maximum number of vector General Purpose Registers per kernel supported by the device |
This view puts the emphasis on giving the programmer the wave constraints based on the SGPRs and VGPRs.
In the upper section there is a table that shows the current constraints based on the shaders information for the current selected device.
In the lower section there is a reference table to help the programmer see the effect of the resources usage on the number of concurrent waves.
The middle table shows if the “ISA size” and “Scratch Registers” might have impact on the performance and what are the recommended values.