Skip to content
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

Add options to measurement methods #3971

Merged
merged 22 commits into from Apr 18, 2023
Merged

Conversation

MrAlias
Copy link
Contributor

@MrAlias MrAlias commented Apr 5, 2023

Resolves #3943

Instead of accepting only attribute slices for the measurement methods (Add, Record, Observe), accept options so these methods can be extended in the future1.

  • Add WithAttributeSet(attribute.Set) measurement option that can be passed to all Add, Record, or Observe methods
  • Prevents data races when a user passes the same attribute slice to multiple measurement operations concurrently. All measurement methods are required by the specification to concurrent safe2.
  • Allows users to allocate a single attribute.Set for all measurement methods instead of having each method create its own attribute.Set for the same data.
  • Provide a shorthand WithAttributes(...attribute.KeyValue) for users to create an attribute set inline with the option creation.

Benchmarks

Against main

sdk/metric

These aren't really apples-to-apples comparisons given the new benchmark is for attributes wrapped in an option and the old benchmarks included allocations for reused slices. The allocation reduction should still be the same though if main were updated to wrap an option (adding an allocation) and the attribute slices were reused (removing an allocation).

goos: linux
goarch: amd64
pkg: go.opentelemetry.io/otel/sdk/metric
cpu: Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz
                                                                      │    old.txt    │                new.txt                │
                                                                      │    sec/op     │    sec/op      vs base                │
SyncMeasure/NoView/Int64Counter/Attributes/0-8                           41.95n ±  8%    60.15n ±  8%   +43.41% (p=0.002 n=6)
SyncMeasure/NoView/Int64Counter/Attributes/1-8                           205.0n ±  3%    133.9n ±  4%   -34.70% (p=0.002 n=6)
SyncMeasure/NoView/Int64Counter/Attributes/10-8                         1064.5n ± 11%    687.2n ±  2%   -35.44% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/0-8                         45.57n ±  4%    56.78n ±  8%   +24.61% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/1-8                         210.1n ±  6%    136.4n ±  4%   -35.08% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/10-8                       1036.5n ±  5%    676.2n ±  6%   -34.76% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/0-8                     47.06n ±  4%    57.94n ±  4%   +23.13% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/1-8                     211.0n ±  2%    130.3n ±  5%   -38.21% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/10-8                   1016.0n ±  9%    669.1n ±  5%   -34.15% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/0-8                   47.94n ±  3%    57.54n ±  5%   +20.01% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/1-8                   212.3n ±  3%    135.5n ±  4%   -36.19% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/10-8                 1064.0n ±  5%    690.7n ±  4%   -35.08% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/0-8                         60.40n ±  6%    67.13n ±  7%   +11.16% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/1-8                         229.8n ±  2%    149.8n ±  7%   -34.79% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/10-8                       1076.0n ±  7%    718.6n ±  7%   -33.22% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/0-8                       60.22n ±  8%    70.38n ±  4%   +16.87% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/1-8                       234.0n ±  3%    149.7n ±  4%   -36.05% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/10-8                     1127.5n ±  9%    696.6n ±  3%   -38.22% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/0-8                         9.020n ±  5%   18.325n ±  5%  +103.16% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/1-8                         96.17n ±  7%    23.68n ±  5%   -75.38% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/10-8                       337.70n ±  5%    24.77n ±  3%   -92.67% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/0-8                       8.899n ±  7%   19.570n ±  4%  +119.91% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/1-8                       98.94n ±  6%    26.26n ±  4%   -73.46% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/10-8                     343.15n ±  4%    26.25n ±  5%   -92.35% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/0-8                   9.046n ±  5%   18.420n ±  2%  +103.61% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/1-8                   99.00n ±  7%    23.93n ±  4%   -75.83% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/10-8                 345.10n ±  4%    23.13n ±  2%   -93.30% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/0-8                 9.474n ±  7%   19.355n ±  7%  +104.30% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/1-8                 99.70n ±  6%    24.15n ±  6%   -75.77% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/10-8               337.65n ±  3%    24.13n ±  2%   -92.85% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/0-8                       8.922n ±  4%   18.625n ±  2%  +108.74% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/1-8                       97.43n ±  6%    24.41n ±  3%   -74.94% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/10-8                     347.00n ±  3%    23.66n ±  3%   -93.18% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/0-8                     9.277n ±  3%   18.905n ±  3%  +103.77% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/1-8                    102.20n ±  6%    23.93n ±  6%   -76.59% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/10-8                   348.40n ±  5%    23.76n ±  5%   -93.18% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/0-8                   163.2n ±  9%    173.3n ±  5%         ~ (p=0.180 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/1-8                   411.8n ±  6%    314.8n ±  4%   -23.56% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/10-8                 1118.0n ±  6%    721.1n ±  2%   -35.51% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/0-8                 171.1n ±  5%    172.4n ±  3%         ~ (p=0.524 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/1-8                 402.0n ±  5%    320.5n ±  8%   -20.29% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/10-8               1088.5n ±  2%    737.6n ±  7%   -32.23% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/0-8             165.9n ±  6%    178.4n ±  6%    +7.53% (p=0.015 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/1-8             414.8n ±  4%    326.4n ± 20%   -21.29% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/10-8           1109.5n ± 12%    723.2n ±  3%   -34.81% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/0-8           162.8n ±  5%    175.5n ±  4%    +7.86% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/1-8           415.9n ±  5%    326.9n ±  5%   -21.41% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/10-8         1087.0n ±  4%    739.4n ±  8%   -31.97% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/0-8                 194.2n ± 15%    197.2n ±  6%         ~ (p=0.699 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/1-8                 430.1n ±  8%    345.8n ± 12%   -19.61% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/10-8               1138.5n ±  8%    751.1n ±  3%   -34.03% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/0-8               184.7n ± 10%    189.0n ±  6%         ~ (p=0.240 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/1-8               437.6n ±  4%    347.7n ±  7%   -20.55% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/10-8             1162.5n ± 14%    750.1n ±  3%   -35.48% (p=0.002 n=6)
Collect/NoView/Int64Counter/1/Attributes/0-8                             320.0n ± 12%    315.5n ±  6%         ~ (p=0.394 n=6)
Collect/NoView/Int64Counter/1/Attributes/1-8                             306.5n ± 11%    306.5n ±  8%         ~ (p=0.937 n=6)
Collect/NoView/Int64Counter/1/Attributes/10-8                            330.1n ± 10%    300.1n ±  4%    -9.09% (p=0.026 n=6)
Collect/NoView/Int64Counter/10/Attributes/0-8                            308.3n ±  7%    301.7n ±  8%         ~ (p=0.619 n=6)
Collect/NoView/Int64Counter/10/Attributes/1-8                            313.4n ±  7%    303.6n ±  3%    -3.13% (p=0.015 n=6)
Collect/NoView/Int64Counter/10/Attributes/10-8                           311.5n ±  7%    306.0n ±  7%         ~ (p=0.667 n=6)
Collect/NoView/Float64Counter/1/Attributes/0-8                           307.6n ±  7%    316.1n ± 13%         ~ (p=0.310 n=6)
Collect/NoView/Float64Counter/1/Attributes/1-8                           315.6n ±  4%    305.1n ±  8%         ~ (p=0.240 n=6)
Collect/NoView/Float64Counter/1/Attributes/10-8                          321.3n ±  4%    316.6n ± 13%         ~ (p=0.331 n=6)
Collect/NoView/Float64Counter/10/Attributes/0-8                          307.1n ±  4%    310.1n ±  9%         ~ (p=1.000 n=6)
Collect/NoView/Float64Counter/10/Attributes/1-8                          318.8n ±  8%    308.3n ±  3%         ~ (p=0.394 n=6)
Collect/NoView/Float64Counter/10/Attributes/10-8                         324.8n ±  8%    310.7n ±  4%         ~ (p=0.310 n=6)
Collect/NoView/Int64UpDownCounter/1/Attributes/0-8                       305.2n ±  7%    318.3n ± 14%         ~ (p=0.394 n=6)
Collect/NoView/Int64UpDownCounter/1/Attributes/1-8                       315.2n ±  6%    303.4n ±  7%         ~ (p=0.818 n=6)
Collect/NoView/Int64UpDownCounter/1/Attributes/10-8                      303.6n ±  6%    313.8n ±  7%         ~ (p=0.310 n=6)
Collect/NoView/Int64UpDownCounter/10/Attributes/0-8                      308.7n ±  6%    307.7n ±  5%         ~ (p=1.000 n=6)
Collect/NoView/Int64UpDownCounter/10/Attributes/1-8                      307.0n ± 15%    305.8n ±  5%         ~ (p=0.485 n=6)
Collect/NoView/Int64UpDownCounter/10/Attributes/10-8                     306.5n ±  3%    311.2n ±  2%         ~ (p=0.240 n=6)
Collect/NoView/Float64UpDownCounter/1/Attributes/0-8                     308.6n ±  3%    317.6n ±  5%    +2.92% (p=0.015 n=6)
Collect/NoView/Float64UpDownCounter/1/Attributes/1-8                     309.0n ± 13%    310.4n ±  6%         ~ (p=0.818 n=6)
Collect/NoView/Float64UpDownCounter/1/Attributes/10-8                    325.9n ± 12%    309.4n ±  4%         ~ (p=0.394 n=6)
Collect/NoView/Float64UpDownCounter/10/Attributes/0-8                    307.9n ±  4%    302.0n ± 12%         ~ (p=0.394 n=6)
Collect/NoView/Float64UpDownCounter/10/Attributes/1-8                    308.1n ±  4%    311.2n ± 18%         ~ (p=0.513 n=6)
Collect/NoView/Float64UpDownCounter/10/Attributes/10-8                   309.6n ±  5%    309.2n ±  4%         ~ (p=0.937 n=6)
Collect/NoView/Int64Histogram/1/Attributes/0-8                           432.8n ±  4%    412.7n ±  2%    -4.64% (p=0.004 n=6)
Collect/NoView/Int64Histogram/1/Attributes/1-8                           424.0n ±  3%    430.6n ±  6%         ~ (p=0.368 n=6)
Collect/NoView/Int64Histogram/1/Attributes/10-8                          434.0n ±  7%    428.9n ±  8%         ~ (p=0.485 n=6)
Collect/NoView/Int64Histogram/10/Attributes/0-8                          425.8n ±  4%    423.7n ±  3%         ~ (p=0.394 n=6)
Collect/NoView/Int64Histogram/10/Attributes/1-8                          434.1n ±  6%    429.9n ±  5%         ~ (p=0.240 n=6)
Collect/NoView/Int64Histogram/10/Attributes/10-8                         437.0n ±  4%    429.0n ±  4%         ~ (p=0.310 n=6)
Collect/NoView/Float64Histogram/1/Attributes/0-8                         425.3n ±  5%    421.1n ±  5%         ~ (p=0.288 n=6)
Collect/NoView/Float64Histogram/1/Attributes/1-8                         436.5n ±  4%    438.2n ±  5%         ~ (p=0.937 n=6)
Collect/NoView/Float64Histogram/1/Attributes/10-8                        433.1n ±  4%    431.4n ±  4%         ~ (p=0.732 n=6)
Collect/NoView/Float64Histogram/10/Attributes/0-8                        426.5n ±  5%    432.4n ±  4%         ~ (p=0.937 n=6)
Collect/NoView/Float64Histogram/10/Attributes/1-8                        431.0n ±  3%    424.0n ±  5%         ~ (p=0.310 n=6)
Collect/NoView/Float64Histogram/10/Attributes/10-8                       426.8n ±  5%    427.0n ±  3%         ~ (p=0.937 n=6)
Collect/NoView/Int64ObservableCounter/Attributes/0-8                     500.6n ±  5%    497.6n ±  7%         ~ (p=0.937 n=6)
Collect/NoView/Int64ObservableCounter/Attributes/1-8                     808.1n ± 12%    749.4n ±  5%    -7.27% (p=0.002 n=6)
Collect/NoView/Int64ObservableCounter/Attributes/10-8                    2.838µ ±  4%    2.404µ ±  3%   -15.28% (p=0.002 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/0-8                   508.7n ± 13%    511.8n ±  5%         ~ (p=0.699 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/1-8                   824.2n ±  3%    735.4n ±  2%   -10.77% (p=0.002 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/10-8                  2.775µ ±  3%    2.353µ ±  2%   -15.19% (p=0.002 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/0-8               494.0n ±  5%    502.2n ±  5%         ~ (p=0.240 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/1-8               835.0n ±  7%    738.7n ±  7%   -11.53% (p=0.002 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/10-8              2.775µ ±  5%    2.396µ ±  5%   -13.66% (p=0.002 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/0-8             502.1n ± 20%    513.3n ± 11%         ~ (p=0.485 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/1-8             814.2n ±  3%    743.6n ±  3%    -8.68% (p=0.002 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/10-8            2.780µ ±  3%    2.399µ ±  6%   -13.72% (p=0.002 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/0-8                       488.8n ±  5%    480.7n ± 12%         ~ (p=0.310 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/1-8                       711.4n ±  5%    633.5n ± 17%   -10.96% (p=0.026 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/10-8                      2.091µ ±  7%    1.630µ ±  2%   -22.03% (p=0.002 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/0-8                     483.9n ± 12%    480.9n ±  7%         ~ (p=0.937 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/1-8                     720.9n ±  4%    641.1n ±  4%   -11.07% (p=0.002 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/10-8                    2.071µ ±  7%    1.629µ ±  2%   -21.34% (p=0.002 n=6)
Collect/DropView/Int64Counter/1/Attributes/0-8                           35.87n ±  4%    36.99n ±  4%         ~ (p=0.180 n=6)
Collect/DropView/Int64Counter/1/Attributes/1-8                           35.18n ±  5%    34.85n ±  5%         ~ (p=0.589 n=6)
Collect/DropView/Int64Counter/1/Attributes/10-8                          35.07n ±  5%    35.31n ±  4%         ~ (p=0.818 n=6)
Collect/DropView/Int64Counter/10/Attributes/0-8                          34.91n ±  7%    34.40n ±  6%         ~ (p=0.818 n=6)
Collect/DropView/Int64Counter/10/Attributes/1-8                          35.36n ±  4%    35.47n ±  5%         ~ (p=0.729 n=6)
Collect/DropView/Int64Counter/10/Attributes/10-8                         35.63n ±  6%    34.29n ±  5%         ~ (p=0.485 n=6)
Collect/DropView/Float64Counter/1/Attributes/0-8                         35.06n ±  5%    35.02n ±  5%         ~ (p=0.699 n=6)
Collect/DropView/Float64Counter/1/Attributes/1-8                         35.05n ±  5%    35.56n ±  4%         ~ (p=0.619 n=6)
Collect/DropView/Float64Counter/1/Attributes/10-8                        34.52n ±  5%    34.33n ±  5%         ~ (p=0.818 n=6)
Collect/DropView/Float64Counter/10/Attributes/0-8                        34.20n ±  2%    35.32n ±  3%    +3.29% (p=0.026 n=6)
Collect/DropView/Float64Counter/10/Attributes/1-8                        34.30n ±  7%    34.73n ±  4%         ~ (p=1.000 n=6)
Collect/DropView/Float64Counter/10/Attributes/10-8                       33.94n ±  7%    35.07n ±  3%         ~ (p=0.310 n=6)
Collect/DropView/Int64UpDownCounter/1/Attributes/0-8                     34.08n ±  4%    35.55n ±  4%    +4.34% (p=0.045 n=6)
Collect/DropView/Int64UpDownCounter/1/Attributes/1-8                     35.31n ±  4%    34.52n ±  3%         ~ (p=0.180 n=6)
Collect/DropView/Int64UpDownCounter/1/Attributes/10-8                    33.69n ±  4%    35.07n ±  5%         ~ (p=0.065 n=6)
Collect/DropView/Int64UpDownCounter/10/Attributes/0-8                    34.69n ±  3%    35.17n ±  3%         ~ (p=0.665 n=6)
Collect/DropView/Int64UpDownCounter/10/Attributes/1-8                    33.38n ±  8%    35.87n ±  7%         ~ (p=0.065 n=6)
Collect/DropView/Int64UpDownCounter/10/Attributes/10-8                   34.00n ±  7%    35.30n ±  9%         ~ (p=0.240 n=6)
Collect/DropView/Float64UpDownCounter/1/Attributes/0-8                   34.25n ± 10%    35.15n ±  7%         ~ (p=0.394 n=6)
Collect/DropView/Float64UpDownCounter/1/Attributes/1-8                   35.24n ±  3%    35.51n ±  3%         ~ (p=0.589 n=6)
Collect/DropView/Float64UpDownCounter/1/Attributes/10-8                  34.22n ±  4%    34.76n ±  5%         ~ (p=0.699 n=6)
Collect/DropView/Float64UpDownCounter/10/Attributes/0-8                  34.74n ±  4%    36.25n ±  4%         ~ (p=0.058 n=6)
Collect/DropView/Float64UpDownCounter/10/Attributes/1-8                  34.41n ±  5%    34.92n ±  2%         ~ (p=0.558 n=6)
Collect/DropView/Float64UpDownCounter/10/Attributes/10-8                 34.17n ±  2%    34.12n ±  4%         ~ (p=1.000 n=6)
Collect/DropView/Int64Histogram/1/Attributes/0-8                         34.16n ±  5%    36.65n ±  8%         ~ (p=0.065 n=6)
Collect/DropView/Int64Histogram/1/Attributes/1-8                         34.38n ±  4%    34.40n ±  4%         ~ (p=1.000 n=6)
Collect/DropView/Int64Histogram/1/Attributes/10-8                        34.66n ±  5%    33.52n ±  7%         ~ (p=0.310 n=6)
Collect/DropView/Int64Histogram/10/Attributes/0-8                        33.66n ±  9%    34.27n ±  5%         ~ (p=0.310 n=6)
Collect/DropView/Int64Histogram/10/Attributes/1-8                        34.91n ±  2%    35.32n ±  5%         ~ (p=0.589 n=6)
Collect/DropView/Int64Histogram/10/Attributes/10-8                       34.92n ±  5%    35.19n ±  6%         ~ (p=0.937 n=6)
Collect/DropView/Float64Histogram/1/Attributes/0-8                       33.45n ±  6%    34.95n ±  4%    +4.51% (p=0.041 n=6)
Collect/DropView/Float64Histogram/1/Attributes/1-8                       34.68n ±  5%    34.62n ±  3%         ~ (p=0.589 n=6)
Collect/DropView/Float64Histogram/1/Attributes/10-8                      34.10n ±  5%    34.99n ±  5%         ~ (p=0.974 n=6)
Collect/DropView/Float64Histogram/10/Attributes/0-8                      34.99n ±  5%    35.83n ±  5%         ~ (p=0.195 n=6)
Collect/DropView/Float64Histogram/10/Attributes/1-8                      34.27n ±  3%    33.52n ±  6%         ~ (p=0.699 n=6)
Collect/DropView/Float64Histogram/10/Attributes/10-8                     34.04n ±  4%    33.88n ±  5%         ~ (p=0.619 n=6)
Collect/DropView/Int64ObservableCounter/Attributes/0-8                   33.78n ±  2%    34.43n ±  4%         ~ (p=0.589 n=6)
Collect/DropView/Int64ObservableCounter/Attributes/1-8                   34.29n ±  4%    35.06n ±  4%         ~ (p=0.310 n=6)
Collect/DropView/Int64ObservableCounter/Attributes/10-8                  33.63n ±  5%    34.28n ±  4%    +1.92% (p=0.041 n=6)
Collect/DropView/Float64ObservableCounter/Attributes/0-8                 34.70n ±  4%    35.15n ±  3%         ~ (p=0.485 n=6)
Collect/DropView/Float64ObservableCounter/Attributes/1-8                 33.82n ±  2%    34.60n ±  4%         ~ (p=0.180 n=6)
Collect/DropView/Float64ObservableCounter/Attributes/10-8                35.88n ±  8%    35.10n ±  4%         ~ (p=0.065 n=6)
Collect/DropView/Int64ObservableUpDownCounter/Attributes/0-8             34.01n ±  3%    34.22n ±  4%         ~ (p=0.818 n=6)
Collect/DropView/Int64ObservableUpDownCounter/Attributes/1-8             34.66n ±  3%    34.97n ±  5%         ~ (p=0.937 n=6)
Collect/DropView/Int64ObservableUpDownCounter/Attributes/10-8            34.73n ±  3%    34.81n ±  4%         ~ (p=0.818 n=6)
Collect/DropView/Float64ObservableUpDownCounter/Attributes/0-8           33.93n ±  6%    34.26n ±  4%         ~ (p=0.665 n=6)
Collect/DropView/Float64ObservableUpDownCounter/Attributes/1-8           33.66n ±  3%    34.00n ±  5%         ~ (p=0.240 n=6)
Collect/DropView/Float64ObservableUpDownCounter/Attributes/10-8          34.70n ±  3%    35.62n ±  3%    +2.68% (p=0.037 n=6)
Collect/DropView/Int64ObservableGauge/Attributes/0-8                     35.19n ±  6%    34.87n ±  5%         ~ (p=0.937 n=6)
Collect/DropView/Int64ObservableGauge/Attributes/1-8                     34.10n ±  3%    34.91n ±  4%         ~ (p=0.418 n=6)
Collect/DropView/Int64ObservableGauge/Attributes/10-8                    33.31n ±  4%    34.27n ±  2%    +2.88% (p=0.041 n=6)
Collect/DropView/Float64ObservableGauge/Attributes/0-8                   34.35n ±  4%    33.68n ±  5%         ~ (p=0.818 n=6)
Collect/DropView/Float64ObservableGauge/Attributes/1-8                   34.53n ±  4%    34.76n ±  3%         ~ (p=0.699 n=6)
Collect/DropView/Float64ObservableGauge/Attributes/10-8                  34.25n ±  5%    34.01n ±  5%         ~ (p=0.699 n=6)
Collect/AttrFilterView/Int64Counter/1/Attributes/0-8                     312.4n ±  3%    309.5n ±  6%         ~ (p=1.000 n=6)
Collect/AttrFilterView/Int64Counter/1/Attributes/1-8                     310.3n ±  8%    314.6n ±  4%         ~ (p=0.485 n=6)
Collect/AttrFilterView/Int64Counter/1/Attributes/10-8                    305.9n ± 10%    312.3n ±  3%         ~ (p=0.615 n=6)
Collect/AttrFilterView/Int64Counter/10/Attributes/0-8                    313.1n ±  4%    307.4n ±  8%         ~ (p=0.818 n=6)
Collect/AttrFilterView/Int64Counter/10/Attributes/1-8                    322.5n ±  9%    312.6n ± 10%         ~ (p=0.310 n=6)
Collect/AttrFilterView/Int64Counter/10/Attributes/10-8                   307.4n ±  3%    313.7n ± 17%         ~ (p=0.240 n=6)
Collect/AttrFilterView/Float64Counter/1/Attributes/0-8                   301.6n ± 12%    304.2n ±  6%         ~ (p=0.485 n=6)
Collect/AttrFilterView/Float64Counter/1/Attributes/1-8                   307.4n ±  7%    319.1n ±  6%         ~ (p=0.132 n=6)
Collect/AttrFilterView/Float64Counter/1/Attributes/10-8                  309.1n ±  6%    314.3n ±  6%         ~ (p=1.000 n=6)
Collect/AttrFilterView/Float64Counter/10/Attributes/0-8                  312.8n ±  6%    313.4n ±  7%         ~ (p=0.699 n=6)
Collect/AttrFilterView/Float64Counter/10/Attributes/1-8                  307.6n ±  9%    317.9n ± 10%         ~ (p=0.240 n=6)
Collect/AttrFilterView/Float64Counter/10/Attributes/10-8                 300.3n ±  6%    311.5n ±  3%         ~ (p=0.180 n=6)
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/0-8               312.8n ±  5%    313.1n ±  7%         ~ (p=0.818 n=6)
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/1-8               302.4n ±  2%    316.4n ±  9%         ~ (p=0.065 n=6)
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/10-8              298.8n ±  3%    316.1n ± 11%    +5.81% (p=0.026 n=6)
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/0-8              309.7n ±  3%    308.4n ± 10%         ~ (p=0.937 n=6)
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/1-8              303.6n ±  4%    303.8n ±  4%         ~ (p=0.818 n=6)
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/10-8             310.9n ±  5%    311.9n ±  4%         ~ (p=0.394 n=6)
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/0-8             308.8n ±  4%    305.1n ± 12%         ~ (p=0.818 n=6)
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/1-8             305.5n ±  3%    320.7n ±  7%    +4.94% (p=0.041 n=6)
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/10-8            304.6n ±  4%    315.1n ±  5%         ~ (p=0.093 n=6)
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/0-8            324.1n ±  7%    307.4n ±  6%         ~ (p=0.240 n=6)
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/1-8            310.7n ± 13%    317.9n ±  4%         ~ (p=0.589 n=6)
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/10-8           323.5n ±  7%    321.9n ±  6%         ~ (p=0.589 n=6)
Collect/AttrFilterView/Int64Histogram/1/Attributes/0-8                   429.1n ±  2%    432.0n ± 11%         ~ (p=0.132 n=6)
Collect/AttrFilterView/Int64Histogram/1/Attributes/1-8                   420.4n ±  5%    442.5n ±  5%    +5.25% (p=0.009 n=6)
Collect/AttrFilterView/Int64Histogram/1/Attributes/10-8                  427.1n ±  3%    427.1n ±  6%         ~ (p=0.699 n=6)
Collect/AttrFilterView/Int64Histogram/10/Attributes/0-8                  430.4n ±  6%    443.4n ±  3%         ~ (p=0.180 n=6)
Collect/AttrFilterView/Int64Histogram/10/Attributes/1-8                  435.5n ±  5%    441.6n ±  5%         ~ (p=0.394 n=6)
Collect/AttrFilterView/Int64Histogram/10/Attributes/10-8                 432.9n ±  4%    433.1n ±  4%         ~ (p=0.699 n=6)
Collect/AttrFilterView/Float64Histogram/1/Attributes/0-8                 432.6n ±  5%    431.7n ±  6%         ~ (p=0.937 n=6)
Collect/AttrFilterView/Float64Histogram/1/Attributes/1-8                 432.9n ±  4%    444.1n ±  5%    +2.61% (p=0.004 n=6)
Collect/AttrFilterView/Float64Histogram/1/Attributes/10-8                423.2n ±  3%    448.6n ±  9%    +5.98% (p=0.002 n=6)
Collect/AttrFilterView/Float64Histogram/10/Attributes/0-8                431.6n ±  6%    443.4n ±  9%         ~ (p=0.394 n=6)
Collect/AttrFilterView/Float64Histogram/10/Attributes/1-8                429.3n ±  2%    444.2n ± 12%    +3.48% (p=0.006 n=6)
Collect/AttrFilterView/Float64Histogram/10/Attributes/10-8               433.8n ±  2%    435.3n ±  3%         ~ (p=0.699 n=6)
Collect/AttrFilterView/Int64ObservableCounter/Attributes/0-8             628.7n ±  2%    646.2n ±  5%    +2.78% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableCounter/Attributes/1-8            1071.5n ±  6%    992.0n ±  3%    -7.42% (p=0.009 n=6)
Collect/AttrFilterView/Int64ObservableCounter/Attributes/10-8            1.769µ ±  7%    1.493µ ± 11%   -15.58% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/0-8           618.6n ±  9%    635.5n ±  7%         ~ (p=0.180 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/1-8          1069.5n ±  6%    945.1n ±  8%   -11.63% (p=0.004 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/10-8          1.836µ ±  7%    1.461µ ±  9%   -20.45% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/0-8       621.4n ±  3%    639.6n ±  3%         ~ (p=0.132 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/1-8      1024.0n ±  7%    988.3n ±  4%    -3.49% (p=0.026 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/10-8      1.752µ ±  6%    1.391µ ± 19%   -20.61% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/0-8     626.6n ±  5%    632.4n ±  6%         ~ (p=0.937 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/1-8     1.046µ ±  9%    1.026µ ±  6%         ~ (p=0.589 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/10-8    1.823µ ±  8%    1.394µ ± 19%   -23.53% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/0-8               580.8n ±  4%    600.4n ±  5%         ~ (p=0.132 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/1-8               966.6n ± 16%    834.9n ± 10%   -13.63% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/10-8              1.647µ ±  7%    1.339µ ±  9%   -18.70% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/0-8             598.8n ±  1%    608.8n ±  3%         ~ (p=0.240 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/1-8             919.4n ± 11%    846.6n ±  7%    -7.91% (p=0.009 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/10-8            1.642µ ±  6%    1.275µ ± 13%   -22.30% (p=0.002 n=6)
Instrument/instrumentImpl/aggregate-8                                    3.786µ ± 16%    3.843µ ± 17%         ~ (p=0.699 n=6)
Instrument/observable/observe-8                                          3.875µ ± 15%    3.557µ ± 24%         ~ (p=0.485 n=6)
ManualReader/Collect-8                                                   1.236µ ±  3%    1.250µ ±  3%         ~ (p=0.699 n=6)
InstrumentCreation-8                                                     8.055µ ±  6%    8.121µ ±  5%         ~ (p=0.485 n=6)
PeriodicReader/Collect-8                                                 1.255µ ±  2%    1.283µ ±  5%    +2.27% (p=0.004 n=6)
geomean                                                                  211.9n          184.8n         -12.80%

                                                                      │     old.txt     │                  new.txt                  │
                                                                      │      B/op       │     B/op       vs base                    │
SyncMeasure/NoView/Int64Counter/Attributes/0-8                            0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Int64Counter/Attributes/1-8                            64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64Counter/Attributes/10-8                           576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/0-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Float64Counter/Attributes/1-8                          64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/10-8                         576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/0-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Int64UpDownCounter/Attributes/1-8                      64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/10-8                     576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/0-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Float64UpDownCounter/Attributes/1-8                    64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/10-8                   576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/0-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Int64Histogram/Attributes/1-8                          64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/10-8                         576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/0-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Float64Histogram/Attributes/1-8                        64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/10-8                       576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/0-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Int64Counter/Attributes/1-8                          64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/10-8                         576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/0-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Float64Counter/Attributes/1-8                        64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/10-8                       576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/0-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Int64UpDownCounter/Attributes/1-8                    64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/10-8                   576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/0-8                  0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Float64UpDownCounter/Attributes/1-8                  64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/10-8                 576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/0-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Int64Histogram/Attributes/1-8                        64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/10-8                       576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/0-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Float64Histogram/Attributes/1-8                      64.00 ±  0%        0.00 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/10-8                     576.0 ±  0%         0.0 ±  0%  -100.00% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/0-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Int64Counter/Attributes/1-8                    192.0 ±  0%       128.0 ±  0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/10-8                  1216.0 ±  0%       640.0 ±  0%   -47.37% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/0-8                  0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Float64Counter/Attributes/1-8                  192.0 ±  0%       128.0 ±  0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/10-8                1216.0 ±  0%       640.0 ±  0%   -47.37% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/0-8              0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/1-8              192.0 ±  0%       128.0 ±  0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/10-8            1216.0 ±  0%       640.0 ±  0%   -47.37% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/0-8            0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/1-8            192.0 ±  0%       128.0 ±  0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/10-8          1216.0 ±  0%       640.0 ±  0%   -47.37% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/0-8                  0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/1-8                  192.0 ±  0%       128.0 ±  0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/10-8                1216.0 ±  0%       640.0 ±  0%   -47.37% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/0-8                0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/1-8                192.0 ±  0%       128.0 ±  0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/10-8              1216.0 ±  0%       640.0 ±  0%   -47.37% (p=0.002 n=6)
Collect/NoView/Int64Counter/1/Attributes/0-8                              128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/1/Attributes/1-8                              128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/1/Attributes/10-8                             128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/10/Attributes/0-8                             128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/10/Attributes/1-8                             128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/10/Attributes/10-8                            128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/1/Attributes/0-8                            128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/1/Attributes/1-8                            128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/1/Attributes/10-8                           128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/10/Attributes/0-8                           128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/10/Attributes/1-8                           128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/10/Attributes/10-8                          128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/1/Attributes/0-8                        128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/1/Attributes/1-8                        128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/1/Attributes/10-8                       128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/10/Attributes/0-8                       128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/10/Attributes/1-8                       128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/10/Attributes/10-8                      128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/1/Attributes/0-8                      128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/1/Attributes/1-8                      128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/1/Attributes/10-8                     128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/10/Attributes/0-8                     128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/10/Attributes/1-8                     128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/10/Attributes/10-8                    128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/1/Attributes/0-8                            480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/1/Attributes/1-8                            480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/1/Attributes/10-8                           480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/10/Attributes/0-8                           480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/10/Attributes/1-8                           480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/10/Attributes/10-8                          480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/1/Attributes/0-8                          480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/1/Attributes/1-8                          480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/1/Attributes/10-8                         480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/10/Attributes/0-8                         480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/10/Attributes/1-8                         480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/10/Attributes/10-8                        480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableCounter/Attributes/0-8                      224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableCounter/Attributes/1-8                      288.0 ±  0%       224.0 ±  0%   -22.22% (p=0.002 n=6)
Collect/NoView/Int64ObservableCounter/Attributes/10-8                     800.0 ±  0%       224.0 ±  0%   -72.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/0-8                    224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64ObservableCounter/Attributes/1-8                    288.0 ±  0%       224.0 ±  0%   -22.22% (p=0.002 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/10-8                   800.0 ±  0%       224.0 ±  0%   -72.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/0-8                224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableUpDownCounter/Attributes/1-8                288.0 ±  0%       224.0 ±  0%   -22.22% (p=0.002 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/10-8               800.0 ±  0%       224.0 ±  0%   -72.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/0-8              224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64ObservableUpDownCounter/Attributes/1-8              288.0 ±  0%       224.0 ±  0%   -22.22% (p=0.002 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/10-8             800.0 ±  0%       224.0 ±  0%   -72.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/0-8                        216.0 ±  0%       216.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableGauge/Attributes/1-8                        280.0 ±  0%       216.0 ±  0%   -22.86% (p=0.002 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/10-8                       792.0 ±  0%       216.0 ±  0%   -72.73% (p=0.002 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/0-8                      216.0 ±  0%       216.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64ObservableGauge/Attributes/1-8                      280.0 ±  0%       216.0 ±  0%   -22.86% (p=0.002 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/10-8                     792.0 ±  0%       216.0 ±  0%   -72.73% (p=0.002 n=6)
Collect/DropView/Int64Counter/1/Attributes/0-8                            0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/1/Attributes/1-8                            0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/1/Attributes/10-8                           0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/10/Attributes/0-8                           0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/10/Attributes/1-8                           0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/10/Attributes/10-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/1/Attributes/0-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/1/Attributes/1-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/1/Attributes/10-8                         0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/10/Attributes/0-8                         0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/10/Attributes/1-8                         0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/10/Attributes/10-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/1/Attributes/0-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/1/Attributes/1-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/1/Attributes/10-8                     0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/10/Attributes/0-8                     0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/10/Attributes/1-8                     0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/10/Attributes/10-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/1/Attributes/0-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/1/Attributes/1-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/1/Attributes/10-8                   0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/10/Attributes/0-8                   0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/10/Attributes/1-8                   0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/10/Attributes/10-8                  0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/1/Attributes/0-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/1/Attributes/1-8                          0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/1/Attributes/10-8                         0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/10/Attributes/0-8                         0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/10/Attributes/1-8                         0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/10/Attributes/10-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/1/Attributes/0-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/1/Attributes/1-8                        0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/1/Attributes/10-8                       0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/10/Attributes/0-8                       0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/10/Attributes/1-8                       0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/10/Attributes/10-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableCounter/Attributes/0-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableCounter/Attributes/1-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableCounter/Attributes/10-8                   0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableCounter/Attributes/0-8                  0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableCounter/Attributes/1-8                  0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableCounter/Attributes/10-8                 0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableUpDownCounter/Attributes/0-8              0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableUpDownCounter/Attributes/1-8              0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableUpDownCounter/Attributes/10-8             0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableUpDownCounter/Attributes/0-8            0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableUpDownCounter/Attributes/1-8            0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableUpDownCounter/Attributes/10-8           0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableGauge/Attributes/0-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableGauge/Attributes/1-8                      0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableGauge/Attributes/10-8                     0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableGauge/Attributes/0-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableGauge/Attributes/1-8                    0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableGauge/Attributes/10-8                   0.000 ±  0%       0.000 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/1/Attributes/0-8                      128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/1/Attributes/1-8                      128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/1/Attributes/10-8                     128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/10/Attributes/0-8                     128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/10/Attributes/1-8                     128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/10/Attributes/10-8                    128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/1/Attributes/0-8                    128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/1/Attributes/1-8                    128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/1/Attributes/10-8                   128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/10/Attributes/0-8                   128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/10/Attributes/1-8                   128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/10/Attributes/10-8                  128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/0-8                128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/1-8                128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/10-8               128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/0-8               128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/1-8               128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/10-8              128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/0-8              128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/1-8              128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/10-8             128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/0-8             128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/1-8             128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/10-8            128.0 ±  0%       128.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/1/Attributes/0-8                    480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/1/Attributes/1-8                    480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/1/Attributes/10-8                   480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/10/Attributes/0-8                   480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/10/Attributes/1-8                   480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/10/Attributes/10-8                  480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/1/Attributes/0-8                  480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/1/Attributes/1-8                  480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/1/Attributes/10-8                 480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/10/Attributes/0-8                 480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/10/Attributes/1-8                 480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/10/Attributes/10-8                480.0 ±  0%       480.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableCounter/Attributes/0-8              224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableCounter/Attributes/1-8              416.0 ±  0%       352.0 ±  0%   -15.38% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableCounter/Attributes/10-8            1440.0 ±  0%       864.0 ±  0%   -40.00% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/0-8            224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64ObservableCounter/Attributes/1-8            416.0 ±  0%       352.0 ±  0%   -15.38% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/10-8          1440.0 ±  0%       864.0 ±  0%   -40.00% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/0-8        224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/1-8        416.0 ±  0%       352.0 ±  0%   -15.38% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/10-8      1440.0 ±  0%       864.0 ±  0%   -40.00% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/0-8      224.0 ±  0%       224.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/1-8      416.0 ±  0%       352.0 ±  0%   -15.38% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/10-8    1440.0 ±  0%       864.0 ±  0%   -40.00% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/0-8                216.0 ±  0%       216.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableGauge/Attributes/1-8                408.0 ±  0%       344.0 ±  0%   -15.69% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/10-8              1432.0 ±  0%       856.0 ±  0%   -40.22% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/0-8              216.0 ±  0%       216.0 ±  0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64ObservableGauge/Attributes/1-8              408.0 ±  0%       344.0 ±  0%   -15.69% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/10-8            1432.0 ±  0%       856.0 ±  0%   -40.22% (p=0.002 n=6)
Instrument/instrumentImpl/aggregate-8                                     778.5 ± 18%       940.0 ±  7%   +20.75% (p=0.009 n=6)
Instrument/observable/observe-8                                           916.5 ± 23%       920.5 ± 25%         ~ (p=1.000 n=6)
ManualReader/Collect-8                                                    160.0 ±  0%       160.0 ±  0%         ~ (p=1.000 n=6) ¹
InstrumentCreation-8                                                    3.110Ki ±  0%     2.829Ki ±  0%    -9.04% (p=0.002 n=6)
PeriodicReader/Collect-8                                                  160.0 ±  0%       160.0 ±  0%         ~ (p=1.000 n=6) ¹
geomean                                                                               ²                  ?                      ² ³
¹ all samples are equal
² summaries must be >0 to compute geomean
³ ratios must be >0 to compute geomean

                                                                      │   old.txt    │                new.txt                 │
                                                                      │  allocs/op   │ allocs/op   vs base                    │
SyncMeasure/NoView/Int64Counter/Attributes/0-8                          0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Int64Counter/Attributes/1-8                          1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64Counter/Attributes/10-8                         1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/0-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Float64Counter/Attributes/1-8                        1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Counter/Attributes/10-8                       1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/0-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Int64UpDownCounter/Attributes/1-8                    1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64UpDownCounter/Attributes/10-8                   1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/0-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Float64UpDownCounter/Attributes/1-8                  1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64UpDownCounter/Attributes/10-8                 1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/0-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Int64Histogram/Attributes/1-8                        1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Int64Histogram/Attributes/10-8                       1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/0-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/NoView/Float64Histogram/Attributes/1-8                      1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/NoView/Float64Histogram/Attributes/10-8                     1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/0-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Int64Counter/Attributes/1-8                        1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Counter/Attributes/10-8                       1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/0-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Float64Counter/Attributes/1-8                      1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Counter/Attributes/10-8                     1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/0-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Int64UpDownCounter/Attributes/1-8                  1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64UpDownCounter/Attributes/10-8                 1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/0-8                0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Float64UpDownCounter/Attributes/1-8                1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64UpDownCounter/Attributes/10-8               1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/0-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Int64Histogram/Attributes/1-8                      1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Int64Histogram/Attributes/10-8                     1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/0-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/DropView/Float64Histogram/Attributes/1-8                    1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/DropView/Float64Histogram/Attributes/10-8                   1.000 ± 0%     0.000 ± 0%  -100.00% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/0-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Int64Counter/Attributes/1-8                  3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Counter/Attributes/10-8                 3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/0-8                0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Float64Counter/Attributes/1-8                3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Counter/Attributes/10-8               3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/0-8            0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/1-8            3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64UpDownCounter/Attributes/10-8           3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/0-8          0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/1-8          3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64UpDownCounter/Attributes/10-8         3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/0-8                0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/1-8                3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Int64Histogram/Attributes/10-8               3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/0-8              0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/1-8              3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
SyncMeasure/AttrFilterView/Float64Histogram/Attributes/10-8             3.000 ± 0%     2.000 ± 0%   -33.33% (p=0.002 n=6)
Collect/NoView/Int64Counter/1/Attributes/0-8                            2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/1/Attributes/1-8                            2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/1/Attributes/10-8                           2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/10/Attributes/0-8                           2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/10/Attributes/1-8                           2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Counter/10/Attributes/10-8                          2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/1/Attributes/0-8                          2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/1/Attributes/1-8                          2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/1/Attributes/10-8                         2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/10/Attributes/0-8                         2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/10/Attributes/1-8                         2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Counter/10/Attributes/10-8                        2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/1/Attributes/0-8                      2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/1/Attributes/1-8                      2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/1/Attributes/10-8                     2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/10/Attributes/0-8                     2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/10/Attributes/1-8                     2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64UpDownCounter/10/Attributes/10-8                    2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/1/Attributes/0-8                    2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/1/Attributes/1-8                    2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/1/Attributes/10-8                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/10/Attributes/0-8                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/10/Attributes/1-8                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64UpDownCounter/10/Attributes/10-8                  2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/1/Attributes/0-8                          4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/1/Attributes/1-8                          4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/1/Attributes/10-8                         4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/10/Attributes/0-8                         4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/10/Attributes/1-8                         4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64Histogram/10/Attributes/10-8                        4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/1/Attributes/0-8                        4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/1/Attributes/1-8                        4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/1/Attributes/10-8                       4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/10/Attributes/0-8                       4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/10/Attributes/1-8                       4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64Histogram/10/Attributes/10-8                      4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableCounter/Attributes/0-8                    3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableCounter/Attributes/1-8                    4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableCounter/Attributes/10-8                   4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/0-8                  3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64ObservableCounter/Attributes/1-8                  4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableCounter/Attributes/10-8                 4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/0-8              3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableUpDownCounter/Attributes/1-8              4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableUpDownCounter/Attributes/10-8             4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/0-8            3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64ObservableUpDownCounter/Attributes/1-8            4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableUpDownCounter/Attributes/10-8           4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/0-8                      3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Int64ObservableGauge/Attributes/1-8                      4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Int64ObservableGauge/Attributes/10-8                     4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/0-8                    3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/NoView/Float64ObservableGauge/Attributes/1-8                    4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/NoView/Float64ObservableGauge/Attributes/10-8                   4.000 ± 0%     3.000 ± 0%   -25.00% (p=0.002 n=6)
Collect/DropView/Int64Counter/1/Attributes/0-8                          0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/1/Attributes/1-8                          0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/1/Attributes/10-8                         0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/10/Attributes/0-8                         0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/10/Attributes/1-8                         0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Counter/10/Attributes/10-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/1/Attributes/0-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/1/Attributes/1-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/1/Attributes/10-8                       0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/10/Attributes/0-8                       0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/10/Attributes/1-8                       0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Counter/10/Attributes/10-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/1/Attributes/0-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/1/Attributes/1-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/1/Attributes/10-8                   0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/10/Attributes/0-8                   0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/10/Attributes/1-8                   0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64UpDownCounter/10/Attributes/10-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/1/Attributes/0-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/1/Attributes/1-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/1/Attributes/10-8                 0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/10/Attributes/0-8                 0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/10/Attributes/1-8                 0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64UpDownCounter/10/Attributes/10-8                0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/1/Attributes/0-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/1/Attributes/1-8                        0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/1/Attributes/10-8                       0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/10/Attributes/0-8                       0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/10/Attributes/1-8                       0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64Histogram/10/Attributes/10-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/1/Attributes/0-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/1/Attributes/1-8                      0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/1/Attributes/10-8                     0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/10/Attributes/0-8                     0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/10/Attributes/1-8                     0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64Histogram/10/Attributes/10-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableCounter/Attributes/0-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableCounter/Attributes/1-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableCounter/Attributes/10-8                 0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableCounter/Attributes/0-8                0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableCounter/Attributes/1-8                0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableCounter/Attributes/10-8               0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableUpDownCounter/Attributes/0-8            0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableUpDownCounter/Attributes/1-8            0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableUpDownCounter/Attributes/10-8           0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableUpDownCounter/Attributes/0-8          0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableUpDownCounter/Attributes/1-8          0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableUpDownCounter/Attributes/10-8         0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableGauge/Attributes/0-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableGauge/Attributes/1-8                    0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Int64ObservableGauge/Attributes/10-8                   0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableGauge/Attributes/0-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableGauge/Attributes/1-8                  0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/DropView/Float64ObservableGauge/Attributes/10-8                 0.000 ± 0%     0.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/1/Attributes/0-8                    2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/1/Attributes/1-8                    2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/1/Attributes/10-8                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/10/Attributes/0-8                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/10/Attributes/1-8                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Counter/10/Attributes/10-8                  2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/1/Attributes/0-8                  2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/1/Attributes/1-8                  2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/1/Attributes/10-8                 2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/10/Attributes/0-8                 2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/10/Attributes/1-8                 2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Counter/10/Attributes/10-8                2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/0-8              2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/1-8              2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/1/Attributes/10-8             2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/0-8             2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/1-8             2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64UpDownCounter/10/Attributes/10-8            2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/0-8            2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/1-8            2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/1/Attributes/10-8           2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/0-8           2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/1-8           2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64UpDownCounter/10/Attributes/10-8          2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/1/Attributes/0-8                  4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/1/Attributes/1-8                  4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/1/Attributes/10-8                 4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/10/Attributes/0-8                 4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/10/Attributes/1-8                 4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64Histogram/10/Attributes/10-8                4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/1/Attributes/0-8                4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/1/Attributes/1-8                4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/1/Attributes/10-8               4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/10/Attributes/0-8               4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/10/Attributes/1-8               4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64Histogram/10/Attributes/10-8              4.000 ± 0%     4.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableCounter/Attributes/0-8            3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableCounter/Attributes/1-8            6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableCounter/Attributes/10-8           6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/0-8          3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64ObservableCounter/Attributes/1-8          6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableCounter/Attributes/10-8         6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/0-8      3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/1-8      6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableUpDownCounter/Attributes/10-8     6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/0-8    3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/1-8    6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableUpDownCounter/Attributes/10-8   6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/0-8              3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Int64ObservableGauge/Attributes/1-8              6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Int64ObservableGauge/Attributes/10-8             6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/0-8            3.000 ± 0%     3.000 ± 0%         ~ (p=1.000 n=6) ¹
Collect/AttrFilterView/Float64ObservableGauge/Attributes/1-8            6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Collect/AttrFilterView/Float64ObservableGauge/Attributes/10-8           6.000 ± 0%     5.000 ± 0%   -16.67% (p=0.002 n=6)
Instrument/instrumentImpl/aggregate-8                                   2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
Instrument/observable/observe-8                                         2.000 ± 0%     2.000 ± 0%         ~ (p=1.000 n=6) ¹
ManualReader/Collect-8                                                  5.000 ± 0%     5.000 ± 0%         ~ (p=1.000 n=6) ¹
InstrumentCreation-8                                                    70.00 ± 0%     70.00 ± 0%         ~ (p=1.000 n=6) ¹
PeriodicReader/Collect-8                                                5.000 ± 0%     5.000 ± 0%         ~ (p=1.000 n=6) ¹
geomean                                                                            ²               ?                      ² ³
¹ all samples are equal
² summaries must be >0 to compute geomean
³ ratios must be >0 to compute geomean

Footnotes

  1. https://github.com/open-telemetry/opentelemetry-specification/issues/3369

  2. https://github.com/open-telemetry/opentelemetry-specification/blob/9352c2524ac03b31f4b845323b351d32ab3adb43/specification/metrics/api.md#concurrency-requirements

@codecov
Copy link

codecov bot commented Apr 5, 2023

Codecov Report

Merging #3971 (028ccd0) into main (d1959c9) will increase coverage by 0.1%.
The diff coverage is 97.8%.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##            main   #3971     +/-   ##
=======================================
+ Coverage   82.0%   82.2%   +0.1%     
=======================================
  Files        175     175             
  Lines      12977   13067     +90     
=======================================
+ Hits       10653   10742     +89     
  Misses      2104    2104             
- Partials     220     221      +1     
Impacted Files Coverage Δ
metric/instrument/asyncfloat64.go 100.0% <ø> (ø)
metric/instrument/asyncint64.go 100.0% <ø> (ø)
metric/instrument/syncfloat64.go 100.0% <ø> (ø)
metric/instrument/syncint64.go 100.0% <ø> (ø)
sdk/metric/instrument.go 93.0% <85.7%> (-3.1%) ⬇️
metric/instrument/instrument.go 100.0% <100.0%> (ø)
metric/internal/global/instruments.go 60.8% <100.0%> (ø)
metric/noop/noop.go 100.0% <100.0%> (ø)
sdk/metric/meter.go 90.2% <100.0%> (+0.7%) ⬆️

... and 1 file with indirect coverage changes

@pellared
Copy link
Member

pellared commented Apr 5, 2023

I like this proposal more than #3947 as it addressed two more "issues":

  • no need to pass empty attributes
  • future-compatibility if more arguments for Add would need to be supported

Also the design feel familiar with the rest of the API

@MrAlias

This comment was marked as outdated.

@MrAlias

This comment was marked as resolved.

@MrAlias MrAlias added pkg:API Related to an API package area:metrics Part of OpenTelemetry Metrics labels Apr 10, 2023
@MrAlias MrAlias added this to the v1.15.0 milestone Apr 10, 2023
@MrAlias MrAlias marked this pull request as ready for review April 10, 2023 20:52
@MrAlias

This comment was marked as resolved.

@MrAlias MrAlias merged commit f8fcfda into open-telemetry:main Apr 18, 2023
21 checks passed
@MrAlias MrAlias deleted the measure-opts branch April 18, 2023 14:16
@MrAlias MrAlias modified the milestones: v1.15.0, Metric v0.38.0 Apr 18, 2023
Copy link
Contributor

@jmacd jmacd left a comment

Choose a reason for hiding this comment

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

👍

Kaushal28 pushed a commit to infracloudio/opentelemetry-go that referenced this pull request Apr 21, 2023
* Add options to measurement methods

* Update noop

* Update global impl

* Update SDK impl

* Fix metric API example

* Update prometheus exporter tests

* Update examples

* WithAttributes and WithAttributeSet

* Add changes to changelog

* Accept slice instead of variadic to new conf funcs

* Clarify WithAttributes performance in docs

* Address feedback about WithAttributes comment

* Add changelog entry for WithAttribute{s,Set}

* Remove number scope from measure opts

* Update changelog

* Remove left-over test cases

---------

Co-authored-by: Robert Pająk <pellared@hotmail.com>
@MrAlias MrAlias mentioned this pull request Apr 27, 2023
reenjii added a commit to reenjii/opentelemetry-go-extra that referenced this pull request May 2, 2023
The latest opentelemetry-go release v1.15.0/v0.38.0 introduces a breaking change that breaks otelsql.
We need to use new metric.WithAttributes helper to build an ObserveOption list from a KeyValue list.

> The measurement methods for all instruments in go.opentelemetry.io/otel/metric/instrument accept an option instead of the variadic "go.opentelemetry.io/otel/attribute".KeyValue

Latest opentelemetry-go release: open-telemetry/opentelemetry-go#4035
Breaking change: open-telemetry/opentelemetry-go#3971
reenjii added a commit to reenjii/opentelemetry-go-extra that referenced this pull request May 2, 2023
The latest opentelemetry-go release v1.15.0/v0.38.0 introduces a breaking change.

> The measurement methods for all instruments in go.opentelemetry.io/otel/metric/instrument
> accept an option instead of the variadic "go.opentelemetry.io/otel/attribute".KeyValue

It breaks otelsql: we need to use new metric.WithAttributes helper
to build an ObserveOption list from a KeyValue list.

Latest opentelemetry-go release: open-telemetry/opentelemetry-go#4035
Breaking change: open-telemetry/opentelemetry-go#3971
reenjii added a commit to reenjii/opentelemetry-go-extra that referenced this pull request May 3, 2023
The latest opentelemetry-go release v1.15.0/v0.38.0 introduces a breaking change.

> The measurement methods for all instruments in go.opentelemetry.io/otel/metric/instrument
> accept an option instead of the variadic "go.opentelemetry.io/otel/attribute".KeyValue

It breaks otelsql: we need to use new metric.WithAttributes helper
to build an ObserveOption list from a KeyValue list.

Latest opentelemetry-go release: open-telemetry/opentelemetry-go#4035
Breaking change: open-telemetry/opentelemetry-go#3971
pmint93 added a commit to pmint93/gofiber-contrib that referenced this pull request May 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:metrics Part of OpenTelemetry Metrics pkg:API Related to an API package
Projects
No open projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Add() is not thread-safe when called with more than one attribute
4 participants