-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial work to enable native events in EventPipe #84318
Conversation
/azp run runtime-extra-platforms |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-extra-platforms |
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks ok, but I'd like to see a signoff from someone actively working on NativeAOT as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM Thanks!!
Initial support for native event support to
EventPipe
, with GC events seen with the RuntimeProvider, that matches the existingEtwProvider
support inNativeAOT
.Similar to the existing
EtwProvider
work inNativeAOT
, theEventPipeProvider
code is checked in, as opposed to using the python generated code. Unlike theEtwProvider
, the code is in the opt-inEventPipe
library (eventpipe-enabled.lib
). There is corresponding minimal implementation in the disabled defaultEventPipe
(eventpipe-disabled.lib
).Both managed and native events can be seen with tools like
PerfView
or dotnet-trace (collect option) by enabling the providers (in the native case, withMicrosoft-Windows-DotNETRuntime
for dotnet-trace and by selecting GC options inPerfView
).There will be a future effort to enhance the existing GC events with the right set of native events for
NativeAOT
.