perf: switch 100kLRPS benchmarks to realistic entropy data source#2985
perf: switch 100kLRPS benchmarks to realistic entropy data source#2985cijothomas wants to merge 1 commit into
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2985 +/- ##
==========================================
- Coverage 85.92% 85.91% -0.01%
==========================================
Files 725 725
Lines 275605 275605
==========================================
- Hits 236811 236797 -14
- Misses 38270 38284 +14
Partials 524 524
🚀 New features to boost your workflow:
|
b170962 to
5c545b1
Compare
JakeDern
left a comment
There was a problem hiding this comment.
Just curious - How does the static data compare to semantic registry data? For the comparison dashboard we're using fresh + semantic convention as the data generation strategy, but if this has better characteristics then maybe we'll consider swapping out there too.
Yes. We'd need to switch there too. The semantic convention registry does not have much variations. I'll dive deeper into it next week. (We also need to find an easy way to tell if we are getting too-easy-compress/unrealiistic input to begin with.) |
Sounds good, I can make that change and compare rates! We have baseline measurements for those suites already with fresh generation + the semantic registry source, so we'll be able to see how the static source compares. |
Summary
Switches the rate-limited (100kLRPS) continuous benchmark tests from
semantic_conventions + pre_generatedtostatic + fresh + use_trace_context: true.Problem
The
semantic_conventionsdata source withpre_generatedstrategy replays identical payloads every batch, resulting in unrealistically high compression ratios. OTAP egress was as low as 6-9 bytes/log, and OTLP ~27 bytes/log — making network utilization benchmarks misleading.Solution
The
staticdata source withfreshgeneration provides:use_trace_context: trueThe uncompressed protobuf size per log record is approximately 250 bytes. See #2987 for a planned metric to expose this directly.
Before/After comparison (CI dedicated machine)
Key observations:
pre_generatedto avoid loadgen bottleneck)Relates to #2540