Skip to content

Tooling to benchmark wire messages#120

Open
rockdaboot wants to merge 11 commits intoopen-telemetry:mainfrom
rockdaboot:benchmark-wire-protocol
Open

Tooling to benchmark wire messages#120
rockdaboot wants to merge 11 commits intoopen-telemetry:mainfrom
rockdaboot:benchmark-wire-protocol

Conversation

@rockdaboot
Copy link
Copy Markdown
Contributor

@rockdaboot rockdaboot commented Aug 15, 2024

This PR is a PoC/RFC for #110.

The PR adds three new options to the profiling agent

  • -reporter-record-inputs-to=<FILE> to record all internal data passed to the reporter into the given NDJSON file.
  • -reporter-replay-inputs-from=<FILE> replays the data from the given NDJSON file.
  • -reporter-save-outputs-to=<DIR> records all wire messages uncompressed into the given directory, one file per message.

The PR also adds tools/protobench that allows compressing the wire messages recorded by the profiling agent with different compression algorithms and levels. The compressors are all imported as Go dependencies (external tools are not used), as that is what the profiling agent would use. The results can be output as CSV or as PNG file (bar chart).

This should combine with prior work from @petethepig (see https://docs.google.com/spreadsheets/d/1Q-6MlegV8xLYdz5WD5iPxQU2tsfodX1-CDV1WeGzyQ0/edit?gid=1732807979#gid=1732807979)

@rockdaboot rockdaboot self-assigned this Aug 15, 2024
@rockdaboot rockdaboot requested review from a team August 15, 2024 16:18
@rockdaboot rockdaboot force-pushed the benchmark-wire-protocol branch from 87bb8d7 to 1844cf7 Compare August 15, 2024 16:45
Copy link
Copy Markdown
Member

@athre0z athre0z left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks promising -- added a few comments!

Comment thread cli_flags.go Outdated
Comment thread tools/protobench/cli_flags.go
Comment thread reporter/benchmark.go
Comment thread reporter/benchmark.go
Comment thread tools/protobench/README.md
@rockdaboot rockdaboot force-pushed the benchmark-wire-protocol branch from 41d3141 to 2c5f92b Compare August 19, 2024 16:52
@rockdaboot rockdaboot requested a review from athre0z August 20, 2024 06:36
@rockdaboot rockdaboot force-pushed the benchmark-wire-protocol branch from 9e556ca to 7c62ff7 Compare August 20, 2024 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants