Skip to content

Switch to C implementation of EventPipe #46079

@josalem

Description

@josalem

We should have a CI pipeline that tests the C version of EventPipe until we have permanently turned on the feature flag. This will help to make sure we don't have any regressions in the meantime.

This issue will track progress towards switching over to the C implementation of EventPipe. Currently, it is behind a feature flag. Before we transition, we should collect the following information:

  • code size comparison
    • See @am11's comment below for some rudimentary numbers
  • throughput comparisons
    • We should document throughputs for both the C and C++ implementations before removing the C++ implementation.
  • regressions analysis with external tools
    • We have tests in the runtime repo that test the IPC protocols and EventPipe directly, but we don't have tests that cover the end-to-end scenario when it comes to dotnet-trace, etw, or other external tools (We do in dotnet/diagnostics though). We should do some local testing to make sure we aren't breaking any scenarios (I doubt we are).
  • Regressions from C++

CC - @tommcdon @lateralusX

Metadata

Metadata

Assignees

Labels

area-Tracing-coreclrarea-Tracing-monoenhancementProduct code improvement that does NOT require public API changes/additionstrackingThis issue is tracking the completion of other related issues.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions