|
| 1 | +<?xml version='1.0' encoding='utf-8' standalone='yes'?> |
| 2 | +<!-- See definitions in C:\Windows\Microsoft.NET\Framework\v4.0.30319\CLR-ETW.man for .NET events --> |
| 3 | +<!-- |
| 4 | + Unlike JIT GC is largely single threaded and the times correlate very well with PerfView where we can drill down into each GC |
| 5 | + generation in the region graph in WPA. |
| 6 | + We use bascially the GC Start/Stop events where the GC Start event has also the generation traced which enables us to create |
| 7 | + regions for each GC type. |
| 8 | + GC suspensions work a bit different were I use the GCSuspendEE_V1 as start and GCRestartEEEnd as end event. This allows us |
| 9 | + to capture in principle also the time where the suspension or resumption itself takes an abnormally long time whic would indicate |
| 10 | + a GC bug or a thread priority problem. |
| 11 | +--> |
| 12 | +<InstrumentationManifest> |
| 13 | + <Instrumentation> |
| 14 | + <Regions> |
| 15 | + <RegionRoot Guid="{d8d639a0-cf4c-45fb-976a-0000DEADBEEF}" Name="GC" FriendlyName="GC Activity"> |
| 16 | + <Region Guid="{d8d639a1-cf4c-45fb-976a-100000000101}" Name="Gen 0" FriendlyName="GCs"> |
| 17 | + <Region Guid="{d8d639a1-cf4c-45fb-976a-000000000001}" Name="Gen 0" FriendlyName="Gen 0"> |
| 18 | + <Start> |
| 19 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="1" Version="1"/> |
| 20 | + <PayloadIdentifier FieldName="Depth" FieldValue="0"/> |
| 21 | + <!-- Depth is the Generation number --> |
| 22 | + </Start> |
| 23 | + <Start> |
| 24 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="1" Version="2"/> |
| 25 | + <!-- .NET 4.6 has a new GC Start event --> |
| 26 | + <PayloadIdentifier FieldName="Depth" FieldValue="0"/> |
| 27 | + </Start> |
| 28 | + |
| 29 | + <Stop> |
| 30 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="2" Version="1"/> |
| 31 | + </Stop> |
| 32 | + <Match> |
| 33 | + <Event PID="true"/> |
| 34 | + </Match> |
| 35 | + <Naming> |
| 36 | + <PayloadBased NameField="Depth"/> |
| 37 | + </Naming> |
| 38 | + </Region> |
| 39 | + </Region> |
| 40 | + |
| 41 | + <Region Guid="{d8d639a1-cf4c-45fb-976b-100000000101}" Name="Gen 1" FriendlyName="GCs"> |
| 42 | + <Region Guid="{d8d639a1-cf4c-45fb-976a-000000000005}" Name="Gen 1" FriendlyName="Gen 1"> |
| 43 | + <Start> |
| 44 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="1" Version="1"/> |
| 45 | + <PayloadIdentifier FieldName="Depth" FieldValue="1"/> |
| 46 | + </Start> |
| 47 | + <Start> |
| 48 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="1" Version="2"/> |
| 49 | + <!-- .NET 4.6 has a new GC Start event --> |
| 50 | + <PayloadIdentifier FieldName="Depth" FieldValue="1"/> |
| 51 | + </Start> |
| 52 | + |
| 53 | + <Stop> |
| 54 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="2" Version="1"/> |
| 55 | + </Stop> |
| 56 | + <Match> |
| 57 | + <Event PID="true"/> |
| 58 | + </Match> |
| 59 | + <Naming> |
| 60 | + <PayloadBased NameField="Depth"/> |
| 61 | + </Naming> |
| 62 | + </Region> |
| 63 | + </Region> |
| 64 | + |
| 65 | + <Region Guid="{d8d639a1-cf4c-45fb-976c-100000000101}" Name="Gen 2" FriendlyName="GCs"> |
| 66 | + <Region Guid="{d8d639a1-cf4c-45fb-976a-000000000006}" Name="Gen 2" FriendlyName="Gen 2"> |
| 67 | + <Start> |
| 68 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="1" Version="1"/> |
| 69 | + <PayloadIdentifier FieldName="Depth" FieldValue="2"/> |
| 70 | + </Start> |
| 71 | + <Start> |
| 72 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="1" Version="2"/> |
| 73 | + <!-- .NET 4.6 has a new GC Start event --> |
| 74 | + <PayloadIdentifier FieldName="Depth" FieldValue="2"/> |
| 75 | + </Start> |
| 76 | + |
| 77 | + <Stop> |
| 78 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="2" Version="1"/> |
| 79 | + </Stop> |
| 80 | + <Match> |
| 81 | + <Event PID="true"/> |
| 82 | + </Match> |
| 83 | + <Naming> |
| 84 | + <PayloadBased NameField="Depth"/> |
| 85 | + </Naming> |
| 86 | + </Region> |
| 87 | + </Region> |
| 88 | + |
| 89 | + <Region Guid="{d8d639a2-cf4c-45fb-976a-000000000003}" Name="GCSuspends" FriendlyName="GC Suspensions"> |
| 90 | + <Region Guid="{d8d639a2-cf4c-45fb-976a-000000000002}" Name="GCSuspend" FriendlyName="GC Suspension"> |
| 91 | + <Start> |
| 92 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="9" Version="1"/> |
| 93 | + </Start> |
| 94 | + <Stop> |
| 95 | + <Event Provider="{e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}" Id="3" Version="1"/> |
| 96 | + </Stop> |
| 97 | + <Match> |
| 98 | + <Event PID="true"/> |
| 99 | + </Match> |
| 100 | + </Region> |
| 101 | + </Region> |
| 102 | + |
| 103 | + </RegionRoot> |
| 104 | + </Regions> |
| 105 | + </Instrumentation> |
| 106 | +</InstrumentationManifest> |
0 commit comments