PIX 2006.26 – Fence Signal/Wait Arrows in GPU Captures
Today we released PIX 2006.26 which can be downloaded here. This release contains support for fence signal-wait arrows in GPU captures, document tab behavior improvements, buffer viewer enhancements, and many bugfixes.
Fence Signal-Wait arrows for GPU captures
GPU captures now track and visualize fence signals and waits to help you understand synchronization issues. You can also use this feature to spot opportunities for async compute work, by finding work on the graphics queue that can’t overlap with any async compute work due to signals/wait patterns.
Buffer Viewer & Memory Viewer
This release adds several improvements to the buffer viewer and memory viewer, including:
- Support for int32_t and int64_t in buffer viewer format syntax.
- Added option to display integer values with comma separation in the buffer viewer and memory viewer.
- Added Table view to memory viewer.
- Support for Home and End keys in the buffer viewer.
- Added a syntax help window.
- Fixed a crash during rendering if no structure type has been provided in the buffer formatter.
- Improved performance for large buffers in tree mode.
This release adds a “Close all captures but this” option to the document tabs menu.
Additionally, a confirmation dialog popup will now appear when closing documents to prevent accidentally closing captures.
API Objects Table
This release adds sorting to the API Objects table in the pipeline view. Additionally in this view, column widths now persist.
- Improve rendering of small bricks in timing captures — when too small to warrant (side) borders, don’t draw them. This allows the stronger color of the bricks themselves to show through, instead of just the (barely visible) border color when events are densely packed.
- Add support for reporting the process name when other threads are viewed during analysis.
- Adds support for looking up, decoding and displaying operation start stacks.
- Improve performance for building the stack tree and function list
- Support extracting memory events from new timing captures when selecting a subsection to save out to a smaller capture.
- Usability improvements for memory analysis. We’ve made several fit-and-finish usability improvements to make analyzing memory captures more intuitive and effective.
- Removed sysmon timing captures.
- Added copy support in message dialog.
- Improve handling of engine crashes. Now, on engine crash the user is presented with the opportunity to save before any temporary files are deleted.
- Added an early preview of Dark Theme. Report any bugs or feedback using the Send Feedback button in PIX.
- Fixed issue where timing captures would crash if the command queue was not found while processing GPU timing data.
- Fixed issue where the ‘Flags’ field for a BuildRaytracingAccelerationStructure would show numbers instead of definitions.
- Fix GPU timing data for ExecuteCommandLists when commandlist operations get reordered by the driver.
- Fixed issue with inaccurate shader access tracking for adjacent finite-sized uav arrays.
- Fixed “Unspecified Error” when debugging shaders caused by undetected instrumentation overrun.
- Fixed a crash when starting analysis on an HLK test.
- Fixed issue where timing data would be incorrect for the first event in a queue when work is submitted on two queues and one is not dependent on the other.
- Fix missing events caused by overlapping command lists in timing captures.
- Fixed a crash when using shaders with some amount of call depth when optimizations are disabled.