6.6 C
New York

Reading AMD RDNA™ and CDNA™ Architecture Disassembly is a Breeze with AMD Radeon™ GPU Analyzer v2.12

Published:

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:

Tooltip

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.

Token HighlightingToken Highlighting

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.

Collapsible BlockCollapsible Block

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.

Branch Instruction ClickBranch Instruction Click

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.

Multi-Branch Block ClickMulti-Branch Block Click

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.

Navigation WorkflowNavigation Workflow

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.

Scrollbar VGPR PressureScrollbar VGPR Pressure

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!

Source link

Related articles

Recent articles