{"id":4470,"date":"2019-05-21T12:45:27","date_gmt":"2019-05-21T19:45:27","guid":{"rendered":"http:\/\/devblogs.microsoft.com\/pix\/?p=4470"},"modified":"2019-05-21T14:39:50","modified_gmt":"2019-05-21T21:39:50","slug":"pix-cpu-tools-populating-the-range-details-view","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/pix\/pix-cpu-tools-populating-the-range-details-view\/","title":{"rendered":"PIX CPU Tools: Populating the Range Details view"},"content":{"rendered":"<p>The most common way to populate the Range Details view in the <a href=\"https:\/\/devblogs.microsoft.com\/pix\/timing-captures-new\/\">new implementation of PIX Timing Captures<\/a> is to drag select a range of time in the Timeline using the mouse.\u00a0 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.\u00a0 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.<\/p>\n<p>There are other ways to populate Range Details in addition to selecting time ranges with the mouse.\u00a0 You may find these other modes useful depending on your scenario.\u00a0 The options for populating Range Details are provided in a drop down menu next to the time range text box in the view.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4471\" src=\"http:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_options.png\" alt=\"\" width=\"1264\" height=\"837\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_options.png 1264w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_options-300x199.png 300w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_options-768x509.png 768w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_options-1024x678.png 1024w\" sizes=\"(max-width: 1264px) 100vw, 1264px\" \/><\/p>\n<p>The <strong>Use selected events<\/strong> and <strong>Use current timeline viewport<\/strong> options are really just shortcuts for selecting time ranges.\u00a0 These options are provided to address common selection scenarios.<\/p>\n<p><strong>Use selected events<\/strong> populates Range Details with the data corresponding to the range of time defined by the start and end time of a selected PIX event.\u00a0 For example, in the following screenshot, I&#8217;ve selected an instance of <strong>MockGameAppController::Process, <\/strong>chosen <strong>Use selected events<\/strong> from the dropdown and filtered the results so I&#8217;m only looking at thread AP1.\u00a0 In this case, Range Details is populated with just the instance of the event I selected, along with all it&#8217;s children.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4478\" src=\"http:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_use_selected_events2.png\" alt=\"\" width=\"1268\" height=\"844\" \/><\/p>\n<p>Note, however, that if you select an event that is not at the top level of the hierarchy, and choose <strong>Use selected events<\/strong>, Range Details will include the selected event and it&#8217;s children, but also all parent nodes in the hierarchy.\u00a0 For example, if I select <strong>AppStateManager::Process<\/strong>, then <strong>Use selected events<\/strong>, the data in Range Details includes the parent events <strong>AppController::Process<\/strong> and <strong>MockGameAppController::Process<\/strong>.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4482\" src=\"http:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_use_selected_events_child.png\" alt=\"\" width=\"1092\" height=\"727\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_use_selected_events_child.png 1092w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_use_selected_events_child-300x200.png 300w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_use_selected_events_child-768x511.png 768w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_use_selected_events_child-1024x682.png 1024w\" sizes=\"(max-width: 1092px) 100vw, 1092px\" \/><\/p>\n<p>The Range Details view is populated this way because selecting an event and using the <strong>Use selected events<\/strong> option is really just a shorthand for selecting the time range corresponding to that event.\u00a0 It is not a shortcut for &#8220;populate Range Details with this only this event and it&#8217;s children.<\/p>\n<p>The other selection shortcut provided in the drop down next to the time range text box is <strong>Use current timeline viewport<\/strong>.\u00a0 This option populates Range Details with all the data that is currently visible in the timeline.<\/p>\n<p>Finally, earlier in this post I mentioned that, by default, the contents of Range Details is synchronized with the selection in the timeline.\u00a0 If you select a different range, the contents of Range Details is updated.\u00a0 There may be instances where you&#8217;d rather the contents of Range Details not update even when you change your selection.\u00a0 To cause the contents of Range Details to remain fixed, deselect the <strong>Sync with timeline selection<\/strong> checkbox in Display Options.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4485\" src=\"http:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_dont_sync_with_timeline.png\" alt=\"\" width=\"1412\" height=\"907\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_dont_sync_with_timeline.png 1412w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_dont_sync_with_timeline-300x193.png 300w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_dont_sync_with_timeline-768x493.png 768w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2019\/05\/pix_range_details_dont_sync_with_timeline-1024x658.png 1024w\" sizes=\"(max-width: 1412px) 100vw, 1412px\" \/><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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.\u00a0 When you complete your selection, Range Details is populated with the data from all Thread and Core lanes for the range of time [&hellip;]<\/p>\n","protected":false},"author":1915,"featured_media":4769,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-4470","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pix"],"acf":[],"blog_post_summary":"<p>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.\u00a0 When you complete your selection, Range Details is populated with the data from all Thread and Core lanes for the range of time [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts\/4470","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/users\/1915"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/comments?post=4470"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts\/4470\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/media\/4769"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/media?parent=4470"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/categories?post=4470"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/tags?post=4470"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}