{"id":5713,"date":"2022-01-04T16:43:09","date_gmt":"2022-01-05T00:43:09","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/pix\/?p=5713"},"modified":"2022-01-25T13:39:34","modified_gmt":"2022-01-25T21:39:34","slug":"graphing-consolidated-events-in-the-timing-capture-metrics-view","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/pix\/graphing-consolidated-events-in-the-timing-capture-metrics-view\/","title":{"rendered":"Graphing Consolidated Events in the Timing Capture Metrics View"},"content":{"rendered":"<p>The <a href=\"https:\/\/devblogs.microsoft.com\/pix\/download\/\">2201.24 release of PIX on Windows<\/a> includes a feature that treats a set of events that follow a common naming pattern as the same event in the <a href=\"https:\/\/devblogs.microsoft.com\/pix\/timing-captures-new\/\">Timing Capture<\/a> Metrics view.\u00a0 You&#8217;ll find this feature useful if you follow the common practice of naming the PIX events that represent a frame of CPU work (or any other repeated set of work) with a sequential number pattern, as in this example:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_frame_star_example.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-5714\" src=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_frame_star_example.png\" alt=\"Image pix consolidated events frame star example\" width=\"1095\" height=\"109\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_frame_star_example.png 1095w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_frame_star_example-300x30.png 300w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_frame_star_example-1024x102.png 1024w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_frame_star_example-768x76.png 768w\" sizes=\"(max-width: 1095px) 100vw, 1095px\" \/><\/a><\/p>\n<div>\n<div class=\"halcyon-chm\">\n<p>In this case, using the Metrics View to analyze an individual frame event, such as &#8220;Frame 339&#8221; isn\u2019t useful, but analyzing the set of &#8220;Frame *&#8221; events as a group can be used to find outliers in frame time.<\/p>\n<p>When populating the <em>Selector<\/em> panel, PIX will look for events whose names follow a particular pattern.\u00a0 These events are then grouped, or consolidated. The individual events that fit the patterns will be treated as the same event for purposes of graphing and analysis.<\/p>\n<p>Events that start with the same string, followed by one or more spaces, followed by a number will be consolidated. For example, from the picture above, the events \u201cFrame 334\u201d, \u201cFrame 335\u201d, \u201cFrame 336\u201d and so on, will be consolidated and graphed as a single event in the Metrics view.<\/p>\n<p>The number at the end of the pattern may be either an integer or a decimal number. If the number is a decimal, it must have values on both sides of the decimal point. For example, the events \u201cRender 10.987\u201d and \u201cRender 12.789\u201d would be consolidated.<\/p>\n<p>The consolidated events are shown in a separate node in the <em>Selector<\/em> panel tree under <strong>PIX CPU Events<\/strong>, as shown in the following figure.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_selector_panel.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-5717\" src=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_selector_panel.png\" alt=\"Image pix consolidated events selector panel\" width=\"260\" height=\"480\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_selector_panel.png 260w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_selector_panel-163x300.png 163w\" sizes=\"(max-width: 260px) 100vw, 260px\" \/><\/a><\/p>\n<div>\n<div class=\"halcyon-chm\">\n<p>Note that events are only consolidated for PIX CPU events. PIX GPU events do not currently support consolidation.<\/p>\n<p>Clicking the checkbox next to a consolidated event will add the group of events to the <em>Active Metrics<\/em> panel just as with a standard event. Hovering over a point in the graph will show the name of the underlying event, as shown in the following figure.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_graphed.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-5718\" src=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_graphed.png\" alt=\"Image pix consolidated events graphed\" width=\"1389\" height=\"564\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_graphed.png 1389w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_graphed-300x122.png 300w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_graphed-1024x416.png 1024w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_graphed-768x312.png 768w\" sizes=\"(max-width: 1389px) 100vw, 1389px\" \/><\/a><\/p>\n<div>\n<div class=\"halcyon-chm\">\n<p>The consolidating of events also occurs when the <em>Metrics View<\/em> is navigated to from the Timeline View. In the following picture, graphing the event <strong>MainLoop 7769<\/strong>, which matches the consolidation pattern, will cause the consolidated event <strong>MainLoop *<\/strong> to be added to the Active Metrics panel.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_timeline_view.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-5720\" src=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_timeline_view.png\" alt=\"Image pix consolidated events timeline view\" width=\"1177\" height=\"153\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_timeline_view.png 1177w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_timeline_view-300x39.png 300w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_timeline_view-1024x133.png 1024w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_timeline_view-768x100.png 768w\" sizes=\"(max-width: 1177px) 100vw, 1177px\" \/><\/a><\/p>\n<div>\n<div class=\"halcyon-chm\">\n<p>There may be times when the algorithm PIX uses to consolidate events results in the grouping of a set of events that should instead be kept separate. If this occurs, uncheck the <em>Enable Metrics View Consolidated Events (requires re-open of capture)<\/em> checkbox in the <em>Settings<\/em>view.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_setting.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-5722\" src=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_setting.png\" alt=\"Image pix consolidated events setting\" width=\"728\" height=\"350\" srcset=\"https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_setting.png 728w, https:\/\/devblogs.microsoft.com\/pix\/wp-content\/uploads\/sites\/41\/2022\/01\/pix_consolidated_events_setting-300x144.png 300w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><\/a><\/p>\n<p>As always, use the PIX feedback button in the upper right corner of the UI to send us feature requests and bug reports.<\/p>\n<\/div>\n<p>Steven.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>The 2201.24 release of PIX on Windows includes a feature that treats a set of events that follow a common naming pattern as the same event in the Timing Capture Metrics view.\u00a0 You&#8217;ll find this feature useful if you follow the common practice of naming the PIX events that represent a frame of CPU work [&hellip;]<\/p>\n","protected":false},"author":1915,"featured_media":5718,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5713","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pix"],"acf":[],"blog_post_summary":"<p>The 2201.24 release of PIX on Windows includes a feature that treats a set of events that follow a common naming pattern as the same event in the Timing Capture Metrics view.\u00a0 You&#8217;ll find this feature useful if you follow the common practice of naming the PIX events that represent a frame of CPU work [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts\/5713","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=5713"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts\/5713\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/media\/5718"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/media?parent=5713"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/categories?post=5713"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/tags?post=5713"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}