-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Don't emit nor generate the manifest for NativeRuntimeEventSource #86850
Conversation
Tagging subscribers to this area: @tarekgh, @tommcdon, @pjanotti Issue DetailsIn issue #83127 @devmason requests that the manifest for NativeRuntimeEventSource i.e., Microsoft-Windows-DotNETRuntime no longer be generated. This PR intends to rectify that issue by adding optional functionality to the ManifestBuilder to continue with all its checks, however at a much lower memory cost. And have the NativeRuntimeEventSource utilize this functionality. After building and testing the runtime changes in DotNet7 here are some results. We can see that there are far fewer string and char[] allocations and no big byte[] allocation which makes sense considering that was the intent.
|
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.
Thank you for being so patient. I took a look and I think it is correct from an implementation point of view, but there are some formatting things I would like you to change.
src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
Outdated
Show resolved
Hide resolved
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.
Thanks for sticking with this!
In issue #83127 @devmason requests that the manifest for NativeRuntimeEventSource i.e., Microsoft-Windows-DotNETRuntime no longer be generated.
This PR intends to rectify that issue by adding optional functionality to the ManifestBuilder to continue with all its checks, however at a much lower memory cost. And have the NativeRuntimeEventSource utilize this functionality.
After building and testing the runtime changes in DotNet7 here are some results.
We can see that there are far fewer string and char[] allocations and no big byte[] allocation which makes sense considering that was the intent.
DotNet7 no changes:
DotNet7 with changes: