PIX 2007.29 – Dark Theme, bug fixes

Morgan Grobin

Today we released PIX version 2007.29 which can be downloaded here. This release introduces Dark Theme, a change to timing capture file formats, and includes several bug fixes.


Dark Theme

PIX now has a Dark Theme! You can enable Dark Theme in the Theme tab in the Settings menu. We hope this often requested feature will keep eyes feeling fresh while working in the dark, and allow you to choose a theme that matches other apps in your toolchain. Theme preference persists between app launches.

Note that implementation of dark theme is incomplete for the mesh viewer and message dialog boxes. If you run into any issues using Dark Theme, please submit feedback using the “Send Feedback” icon in the upper right corner of PIX.

Screenshot of the PIX Theme Settings menu

Screenshot of the PIX homepage using Dark Theme

Screenshot of the GPU Pipeline view with Dark Theme enabled

Timing Capture file format change

The Timing Capture file format has changed in this release of PIX. Timing Captures taken with previous versions of PIX cannot be opened in this new version of PIX. Attempting to open an old capture will present the following error:

An error occured while opening 'timing_capture.wpix'. This capture file was created with an older version of PXI and is no longer supported.

When you see this error, the version of PIX used to take the capture you are attempting to open will be displayed in the Output window, as shown in this example:

“Previous timing capture created with PIX version 1.0.2006.26001”

Installers from previous versions of PIX are available here.  The second and third parts of the version number displayed in the Output window can be used to find the appropriate installer.  For example, the version number listed in the example above (1.0.2006.26001) maps to the 2006.26 PIX for Windows release.

Multiple versions of PIX can be installed side-by-side on the same PC, should you need to install older versions to view older Timing Captures. Remember to uncheck the “Replace any previously installed versions” checkbox when running the installer:

Incorrect event hierarchies in PIX Timing Captures

PIX could occasionally show an incorrect event hierarchy if the title called PixBeginEvent with format string arguments. The incorrect hierarchy was caused because PIX didn’t successfully determine when the event ended.

Memory and File IO captures are deprecated

Memory and File IO captures have been deprecated and removed from the PIX UI. To analyze memory and file io performance, use the new memory and file io options on Timing Captures.


Additional changes:

  • Added decoding and storage of heap handle for HeapAlloc/HeapFree.
  • Added GPU Memory counters to new timing captures metrics view.
  • Fixed counter collection for mesh shaders.
  • Implemented mesh shader output view for line primitives.
  • Timing Captures – The filter in the Range Details view can now be applied to the filename column when looking at File IO Events.
  • Enabled “badly sized buffer” warnings for mesh shaders.
  • Fixed (removed) gamma correction alpha channel of SRGB formats.
  • Timing Captures – The Element Details view for context switches now includes information on thread priorities and wait reasons.  This information allows you to see whether a thread’s priority changes coming out of the context switch, for example.
  • Added support for half int and fp16 in mesh shader output viewer.
  • Fixed the timing information for the first event in a queue.
  • Timing Captures – Fixed missing events caused by overlapping command lists.
  • Heap allocations are now grouped by heap in the Allocation Stack Tree in Timing Captures.  This grouping makes it easier to identify how individual heaps are contributing to memory usage and memory leaks.
  • Timing captures taken with the “File Accesses” option checked now report information on calls to CreateFile.
  • Timing Captures – The filter bar in Range Details now includes a “Not Freed” option.  The new option can be used to filter the contents of the view so that only memory allocation callstacks that were not freed are shown.
  • Memory allocations for which PIX could not identify the callstack were not accounted for in the memory totals shown in the Range Details view in Timing Captures.  These allocations are now counted.
  • Fixed copy-to-clipboard from tree-form buffer viewer.
  • Fixed crash clicking on 0th row of buffer viewer with no structure defined.
  • Fixed a problem with processes with missing process description breaking PIX’s “attach” function.
  • Callstacks shown in the Element Details view in Timing Captures are now shown in boldface so they are easier to read.
  • The Element Details view in Timing Captures now includes readying information.


Discussion is closed.

Feedback usabilla icon