PIX CPU Tools: Populating the Range Details view
The most common way to populate the Range Details view in the new implementation of PIX Timing Captures is to drag select a range of time in the Timeline using the mouse. When you complete your selection, Range Details is populated with the data from all Thread and Core lanes for the range of time you selected. After Range Details is populated, single clicking anywhere in the Timeline will not cause Range Details to update, but selecting a different time range will.
There are other ways to populate Range Details in addition to selecting time ranges with the mouse. You may find these other modes useful depending on your scenario. The options for populating Range Details are provided in a drop down menu next to the time range text box in the view.
The Use selected events and Use current timeline viewport options are really just shortcuts for selecting time ranges. These options are provided to address common selection scenarios.
Use selected events populates Range Details with the data corresponding to the range of time defined by the start and end time of a selected PIX event. For example, in the following screenshot, I’ve selected an instance of MockGameAppController::Process, chosen Use selected events from the dropdown and filtered the results so I’m only looking at thread AP1. In this case, Range Details is populated with just the instance of the event I selected, along with all it’s children.
Note, however, that if you select an event that is not at the top level of the hierarchy, and choose Use selected events, Range Details will include the selected event and it’s children, but also all parent nodes in the hierarchy. For example, if I select AppStateManager::Process, then Use selected events, the data in Range Details includes the parent events AppController::Process and MockGameAppController::Process.
The Range Details view is populated this way because selecting an event and using the Use selected events option is really just a shorthand for selecting the time range corresponding to that event. It is not a shortcut for “populate Range Details with this only this event and it’s children.
The other selection shortcut provided in the drop down next to the time range text box is Use current timeline viewport. This option populates Range Details with all the data that is currently visible in the timeline.
Finally, earlier in this post I mentioned that, by default, the contents of Range Details is synchronized with the selection in the timeline. If you select a different range, the contents of Range Details is updated. There may be instances where you’d rather the contents of Range Details not update even when you change your selection. To cause the contents of Range Details to remain fixed, deselect the Sync with timeline selection checkbox in Display Options.