AMD Radeon™ GPU Analyzer (RGA) v2.12 ships with an updated ISA disassembly view in the GUI application which makes it easier than ever to read and understand your shader and kernel ISA disassembly.
Here is what’s new with the updated ISA disassembly view:
Instruction descriptions make it easier to understand your compiled shaders and kernels
We know how cumbersome the process of reading through ISA disassembly can be. The need to consult the specification documents and other external resources can easily throw off your development or optimization workflow. With the updated ISA view, RGA leverages AMD machine-readable GPU ISA specifications to provide you with a quick human-readable description of every instruction. When hovering above an instruction in the updated ISA disassembly view, you will notice a tooltip pop up with the instruction’s details:
Automatic highlighting of substring occurrences
Clicking on any text string (such as instruction opcodes, registers, or constants) now automatically highlights all occurrences of that string throughout the disassembly and also highlights register ranges when applicable. When searching for text, the results are now highlighted both within the disassembly view and on the scrollbar. This feature is especially useful for analyzing dependencies and spotting patterns in your shaders and kernels, making it easier to perform optimizations.
Collapsible and expandable basic blocks
With the updated ISA disassembly view you can now collapse or expand basic blocks. Click the arrow to the left of an instruction line to expand or collapse a block, making it easier to focus on specific sections of the ISA especially when dealing with long shaders and kernels.
Two-Way navigation between branch instructions and targets
The updated ISA disassembly view now supports two-way navigation between branch instructions and their targets. Branch instruction targets and block labels are displayed as clickable hyperlinks in the shader.
Clicking on a branch instruction target automatically scrolls the ISA view to the corresponding block.
Similarly, clicking on a block label navigates to the branch instruction that references it. If multiple branch instructions target the same block, a selection menu allows the user to choose which branch instruction to jump to.
Navigation controls, including backward and forward arrows and a history menu, are available in the upper-right corner of the ISA disassembly view. Navigation history is maintained, allowing users to move backward and forward through previously visited branch instructions and block labels. Users can also jump directly to a specific entry in the history.
VGPR pressure visualization
In RGA v2.6, we introduced the VGPR Pressure Visualization feature in the GUI application. With RGA v2.12, the tool now dynamically identifies the VGPR allocation granularity for the given shader or kernel on the relevant target GPU architecture, leading to more accurate VGPR pressure analysis results to help with your shader and kernel optimization efforts.
Another new addition related to VGPR pressure visualization is that the disassembly view’s scrollbar now shows highlights for areas of high VGPR pressure within the shader, making it easier to track high VGPR usage.
For more information about VGPR pressure visualization in RGA refer to this blogpost.
Get the AMD Radeon™ Developer Tool Suite today!
You can find out more about RGA, including links to the release binaries on GitHub and the full release notes list, on our product page.
Your feedback is incredibly valuable to us and helps drive the RGA roadmap. For feature requests or feedback, get in touch on GitHub!