Skip to content

sdk/metrics: performance impact of exemplars support even when configured as always_off #4243

Open
@emdneto

Description

After d5fb2c4 got merged we had a huge drop on iter/sec in metrics SDK benchmark for all metric types:

image

It seems expected when the Exemplars feature is enabled (the default behavior), but according to the spec, setting the exemplar filter to always_off shouldn't introduce any overhead. Running the benchmark locally, we still have the same overhead even when "disabling" (set to always_off) the Exemplars feature.

AlwaysOff
An ExemplarFilter which makes no measurements eligible for being an Exemplar. Using this ExemplarFilter is as good as disabling Exemplar feature.

Benchmark Results Summary

Metric before exemplars a8aacb0 trace_based (main) always_off (main)
Min (µs) 8.3550 13.1880 13.1440
Max (µs) 23.5780 36.9060 94.2870
Mean (µs) 8.9926 14.4266 16.6942
StdDev (µs) 1.0477 2.6945 10.0739
Median (µs) 8.7910 13.8030 13.9150
IQR (µs) 0.2520 0.5620 0.5935
OPS (Kops/s) 111.2024 69.3162 59.9010
Rounds 690 273 277
Iterations 1 1 1

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    metricssdkAffects the SDK package.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions