tokio-rs / tracing

Application level tracing for Rust.
https://tracing.rs
MIT License
5.33k stars 697 forks source link

Use const thread_locals when possible #2838

Closed SUPERCILEX closed 7 months ago

SUPERCILEX commented 8 months ago

They have much better perf.

davidbarsky commented 8 months ago

Thanks! Out of curiosity, what change does this result in on the benchmarks?

SUPERCILEX commented 8 months ago

Thanks! Out of curiosity, what change does this result in on the benchmarks?

No idea. I just ended up in a thread_local rabbit hole and this is a free change that will result in better codegen AFAIK. See the second paragraph of the docs: https://doc.rust-lang.org/std/macro.thread_local.html.

SUPERCILEX commented 8 months ago

Ok, I was able to run the benchmarks, but honestly not sure if it's all that conclusive.

15sec -1 ~/Desktop/tracing> cargo bench --workspace
   Compiling tracing-core v0.2.0 (/home/asaveau/Desktop/tracing/tracing-core)
   Compiling tracing-log v0.2.0 (/home/asaveau/Desktop/tracing/tracing-log)
   Compiling tracing v0.2.0 (/home/asaveau/Desktop/tracing/tracing)
   Compiling tracing-serde v0.2.0 (/home/asaveau/Desktop/tracing/tracing-serde)
   Compiling tracing-subscriber v0.3.0 (/home/asaveau/Desktop/tracing/tracing-subscriber)
   Compiling tracing-futures v0.3.0 (/home/asaveau/Desktop/tracing/tracing-futures)
   Compiling tracing-tower v0.1.0 (/home/asaveau/Desktop/tracing/tracing-tower)
   Compiling tracing-mock v0.2.0 (/home/asaveau/Desktop/tracing/tracing-mock)
   Compiling tracing-appender v0.2.0 (/home/asaveau/Desktop/tracing/tracing-appender)
   Compiling tracing-attributes v0.2.0 (/home/asaveau/Desktop/tracing/tracing-attributes)
   Compiling tracing-journald v0.2.0 (/home/asaveau/Desktop/tracing/tracing-journald)
   Compiling tracing-flame v0.2.0 (/home/asaveau/Desktop/tracing/tracing-flame)
   Compiling tracing-macros v0.1.0 (/home/asaveau/Desktop/tracing/tracing-macros)
   Compiling tracing-error v0.2.0 (/home/asaveau/Desktop/tracing/tracing-error)
    Finished bench [optimized] target(s) in 12.81s
     Running unittests src/lib.rs (target/release/deps/tracing-2b5c263cf3b9335e)

running 1 test
test span::test::test_record_backwards_compat ... ignored

test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running benches/baseline.rs (target/release/deps/baseline-028b8e64f02f6b6e)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

comparison/relaxed_load time:   [781.94 ps 788.76 ps 798.23 ps]                                     
                        change: [+5.3148% +6.8521% +8.3605%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  2 (2.00%) high mild
  1 (1.00%) high severe
comparison/acquire_load time:   [790.20 ps 795.38 ps 801.05 ps]                                     
                        change: [+5.4691% +6.4972% +7.4509%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 11 outliers among 100 measurements (11.00%)
  11 (11.00%) high mild
comparison/log          time:   [989.03 ps 1.0044 ns 1.0215 ns]                            
                        change: [+8.7423% +10.765% +12.804%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 20 outliers among 100 measurements (20.00%)
  3 (3.00%) low mild
  7 (7.00%) high mild
  10 (10.00%) high severe

     Running benches/dispatch_get_clone.rs (target/release/deps/dispatch_get_clone-e50814459503386a)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

Dispatch::get_clone/none                                                                             
                        time:   [2.9697 ns 2.9916 ns 3.0133 ns]
                        change: [+4.5600% +5.3079% +5.9949%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  4 (4.00%) high mild
Dispatch::get_clone/scoped                                                                             
                        time:   [16.513 ns 16.573 ns 16.642 ns]
                        change: [+13.877% +14.613% +15.295%] (p = 0.00 < 0.05)
                        Performance has regressed.
Dispatch::get_clone/global                                                                             
                        time:   [2.9371 ns 2.9537 ns 2.9698 ns]
                        change: [+5.9532% +6.8976% +7.8766%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 2 outliers among 100 measurements (2.00%)
  2 (2.00%) high mild

     Running benches/dispatch_get_ref.rs (target/release/deps/dispatch_get_ref-261a1bc233229f97)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

Dispatch::get_ref/none  time:   [401.24 ps 406.77 ps 412.92 ps]                                   
                        change: [-26.954% -25.891% -24.884%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
  3 (3.00%) low mild
  1 (1.00%) high mild
  1 (1.00%) high severe
Dispatch::get_ref/scoped                                                                             
                        time:   [2.9233 ns 2.9382 ns 2.9532 ns]
                        change: [+4.9847% +5.8862% +6.8967%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  2 (2.00%) high mild
  2 (2.00%) high severe
Dispatch::get_ref/global                                                                            
                        time:   [398.59 ps 400.19 ps 401.90 ps]
                        change: [-26.102% -25.487% -24.919%] (p = 0.00 < 0.05)
                        Performance has improved.

     Running benches/empty_span.rs (target/release/deps/empty_span-ac502e0d0267a938)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

empty_span/none         time:   [275.63 ps 277.03 ps 278.74 ps]                            
                        change: [+4.0611% +5.0048% +6.0717%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  3 (3.00%) high severe
empty_span/scoped       time:   [268.71 ps 270.50 ps 272.20 ps]                              
                        change: [+1.7371% +2.4374% +3.1499%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 5 outliers among 100 measurements (5.00%)
  3 (3.00%) low severe
  1 (1.00%) high mild
  1 (1.00%) high severe
empty_span/global       time:   [277.60 ps 279.89 ps 282.17 ps]                              
                        change: [+4.7112% +5.3876% +6.0060%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) low severe
  2 (2.00%) low mild
  1 (1.00%) high mild
empty_span/baseline_struct                                                                             
                        time:   [814.84 ps 819.93 ps 826.12 ps]
                        change: [+1.7642% +2.4035% +3.0251%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe

     Running benches/enter_span.rs (target/release/deps/enter_span-a1bf34c4567a5b02)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

enter_span/none         time:   [0.0000 ps 0.0000 ps 0.0000 ps]                                     
                        change: [-58.902% +8.6771% +180.29%] (p = 0.88 > 0.05)
                        No change in performance detected.
Found 13 outliers among 100 measurements (13.00%)
  5 (5.00%) high mild
  8 (8.00%) high severe
enter_span/scoped       time:   [4.2037 ns 4.2145 ns 4.2266 ns]                               
                        change: [+2.6751% +3.2430% +3.8088%] (p = 0.00 < 0.05)
                        Performance has regressed.
enter_span/global       time:   [4.7786 ns 4.8029 ns 4.8284 ns]                               
                        change: [+3.2278% +4.2668% +5.3174%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe

     Running benches/event.rs (target/release/deps/event-045d842bffc0bcc6)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

event/none              time:   [268.16 ps 269.57 ps 271.16 ps]                       
                        change: [+2.6170% +3.2146% +3.8701%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high mild
event/scoped            time:   [9.4634 ns 9.4945 ns 9.5328 ns]                          
                        change: [+12.755% +13.455% +14.139%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 26 outliers among 100 measurements (26.00%)
  2 (2.00%) low severe
  4 (4.00%) low mild
  5 (5.00%) high mild
  15 (15.00%) high severe
event/scoped_recording  time:   [42.813 ns 43.255 ns 43.600 ns]                                    
                        change: [-7.9960% +2.5932% +13.925%] (p = 0.75 > 0.05)
                        No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
  2 (2.00%) low severe
  5 (5.00%) low mild
  1 (1.00%) high severe
event/global            time:   [6.9061 ns 7.1114 ns 7.3677 ns]                          
                        change: [+3.6784% +5.3495% +7.6502%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 12 outliers among 100 measurements (12.00%)
  5 (5.00%) high mild
  7 (7.00%) high severe

     Running benches/shared.rs (target/release/deps/shared-eee65910ca948664)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running benches/span_fields.rs (target/release/deps/span_fields-5267736ca1e44e25)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

span_fields/none        time:   [4.6609 ns 4.6874 ns 4.7187 ns]                              
                        change: [+9.8720% +10.581% +11.350%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) high mild
  2 (2.00%) high severe
span_fields/scoped      time:   [39.820 ns 40.062 ns 40.425 ns]                                
                        change: [+7.4497% +8.3578% +9.3855%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) high mild
  3 (3.00%) high severe
span_fields/scoped_recording                                                                            
                        time:   [333.24 ns 346.22 ns 362.90 ns]
                        change: [+27.510% +34.372% +39.787%] (p = 0.00 < 0.05)
                        Performance has regressed.
span_fields/global      time:   [24.678 ns 24.883 ns 25.147 ns]                                
                        change: [+9.7593% +14.632% +21.667%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe

     Running benches/span_no_fields.rs (target/release/deps/span_no_fields-15b3947f7909347e)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

span_no_fields/none     time:   [1.9136 ns 1.9282 ns 1.9443 ns]                                 
                        change: [+4.1555% +5.3510% +6.7765%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 6 outliers among 100 measurements (6.00%)
  1 (1.00%) low mild
  1 (1.00%) high mild
  4 (4.00%) high severe
span_no_fields/scoped   time:   [24.048 ns 24.146 ns 24.247 ns]                                   
                        change: [+5.3482% +6.5197% +7.8101%] (p = 0.00 < 0.05)
                        Performance has regressed.
span_no_fields/scoped_recording                                                                             
                        time:   [39.562 ns 39.703 ns 39.850 ns]
                        change: [+2.8091% +3.2711% +3.7032%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high mild
span_no_fields/global   time:   [9.4072 ns 9.6788 ns 10.056 ns]                                   
                        change: [+3.1716% +5.6727% +8.4080%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 5 outliers among 100 measurements (5.00%)
  2 (2.00%) high mild
  3 (3.00%) high severe

     Running benches/span_repeated.rs (target/release/deps/span_repeated-d31d6323126e585a)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

span_repeated/none      time:   [708.12 ns 713.49 ns 718.73 ns]                                
                        change: [-1.7018% -0.6908% +0.4127%] (p = 0.21 > 0.05)
                        No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
  7 (7.00%) high mild
  1 (1.00%) high severe
span_repeated/scoped    time:   [2.6757 µs 2.7047 µs 2.7352 µs]                                  
                        change: [-1.1995% -0.2539% +0.7001%] (p = 0.60 > 0.05)
                        No change in performance detected.
Found 5 outliers among 100 measurements (5.00%)
  1 (1.00%) low mild
  1 (1.00%) high mild
  3 (3.00%) high severe
span_repeated/scoped_recording                                                                             
                        time:   [6.4216 µs 6.4558 µs 6.5016 µs]
                        change: [+4.1007% +4.5760% +5.2458%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) low mild
  2 (2.00%) high severe
span_repeated/global    time:   [1.5465 µs 1.5545 µs 1.5630 µs]                                  
                        change: [+3.3415% +4.1440% +5.0208%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 7 outliers among 100 measurements (7.00%)
  6 (6.00%) high mild
  1 (1.00%) high severe

     Running unittests src/lib.rs (target/release/deps/tracing_appender-040566d3a3ebba74)

running 12 tests
test non_blocking::test::backpressure_exerted ... ignored
test non_blocking::test::logs_dropped_if_lossy ... ignored
test non_blocking::test::multi_threaded_writes ... ignored
test rolling::test::test_make_writer ... ignored
test rolling::test::test_max_log_files ... ignored
test rolling::test::test_never_date_rounding - should panic ... ignored
test rolling::test::test_path_concatenation ... ignored
test rolling::test::test_rotations ... ignored
test rolling::test::write_daily_log ... ignored
test rolling::test::write_hourly_log ... ignored
test rolling::test::write_minutely_log ... ignored
test rolling::test::write_never_log ... ignored

test result: ok. 0 passed; 0 failed; 12 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running benches/bench.rs (target/release/deps/bench-43288774091fd3bf)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

synchronous/single_thread                                                                             
                        time:   [637.33 ns 681.66 ns 738.38 ns]
                        change: [+12.483% +15.813% +19.667%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 9 outliers among 100 measurements (9.00%)
  3 (3.00%) high mild
  6 (6.00%) high severe
synchronous/multiple_writers                                                                             
                        time:   [632.07 ns 634.22 ns 636.40 ns]
                        change: [+0.6304% +1.3889% +2.2788%] (p = 0.00 < 0.05)
                        Change within noise threshold.
Found 14 outliers among 100 measurements (14.00%)
  1 (1.00%) low severe
  2 (2.00%) low mild
  4 (4.00%) high mild
  7 (7.00%) high severe

non_blocking/single_thread                                                                             
                        time:   [782.33 ns 790.89 ns 802.99 ns]
                        change: [+1.9738% +3.1781% +4.4682%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 7 outliers among 100 measurements (7.00%)
  1 (1.00%) low severe
  2 (2.00%) high mild
  4 (4.00%) high severe
non_blocking/multiple_writers                                                                             
                        time:   [886.89 ns 905.68 ns 928.53 ns]
                        change: [+0.7787% +2.2021% +3.5954%] (p = 0.00 < 0.05)
                        Change within noise threshold.
Found 9 outliers among 100 measurements (9.00%)
  2 (2.00%) high mild
  7 (7.00%) high severe

     Running unittests src/lib.rs (target/release/deps/tracing_attributes-e567bc6f95ad7366)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_core-9e44adc6f0055a0f)

running 22 tests
test callsite::tests::linked_list_empty ... ignored
test callsite::tests::linked_list_push ... ignored
test callsite::tests::linked_list_push_several ... ignored
test callsite::tests::linked_list_repeated - should panic ... ignored
test dispatch::test::default_dispatch ... ignored
test dispatch::test::default_no_collector ... ignored
test dispatch::test::dispatch_downcasts ... ignored
test dispatch::test::dispatch_is ... ignored
test dispatch::test::events_dont_infinite_loop ... ignored
test dispatch::test::spans_dont_infinite_loop ... ignored
test field::test::empty_fields_are_skipped ... ignored
test field::test::empty_value_set_is_empty ... ignored
test field::test::fields_from_other_callsets_are_skipped ... ignored
test field::test::record_debug_fn ... ignored
test field::test::record_error ... ignored
test field::test::sparse_value_sets_are_not_empty ... ignored
test field::test::value_set_with_no_values_is_empty ... ignored
test field::test::value_sets_with_fields_from_other_callsites_are_empty ... ignored
test metadata::tests::filter_level_conversion ... ignored
test metadata::tests::level_filter_is_usize_sized ... ignored
test metadata::tests::level_filter_reprs ... ignored
test metadata::tests::level_from_str ... ignored

test result: ok. 0 passed; 0 failed; 22 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_error-12383f6a0936937f)

running 3 tests
test backtrace::tests::capture_empty ... ignored
test backtrace::tests::capture_supported ... ignored
test backtrace::tests::capture_unsupported ... ignored

test result: ok. 0 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_flame-da132eab8747a494)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_futures-d19aafdf843d77c2)

running 3 tests
test tests::futures_01_tests::future_enter_exit_is_reasonable ... ignored
test tests::futures_01_tests::future_error_ends_span ... ignored
test tests::futures_01_tests::stream_enter_exit_is_reasonable ... ignored

test result: ok. 0 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_journald-da6e43f91556e991)

running 1 test
test socket::cmsg_buffer_size_for_one_fd ... ignored

test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_log-e24b07b1b72800fd)

running 5 tests
test test::debug_callsite_is_correct ... ignored
test test::error_callsite_is_correct ... ignored
test test::info_callsite_is_correct ... ignored
test test::trace_callsite_is_correct ... ignored
test test::warn_callsite_is_correct ... ignored

test result: ok. 0 passed; 0 failed; 5 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_macros-a6b47573f042f79c)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_mock-d2c1ea37bb5cd69b)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_serde-d2641ad90cb19d63)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running benches/enter.rs (target/release/deps/enter-0cbc5b428b021164)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

enter/enabled           time:   [10.555 ns 10.644 ns 10.738 ns]                           
                        change: [+7.8828% +9.6268% +11.438%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  2 (2.00%) low mild
  2 (2.00%) high severe
enter/disabled          time:   [405.63 ps 412.11 ps 418.56 ps]                            
                        change: [-31.564% -30.293% -28.900%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 2 outliers among 100 measurements (2.00%)
  2 (2.00%) high mild

enter_exit/enabled      time:   [87.267 ns 87.766 ns 88.361 ns]                               
                        change: [+14.685% +15.588% +16.791%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) high mild
  2 (2.00%) high severe
enter_exit/disabled     time:   [330.27 ps 330.80 ps 331.42 ps]                                
                        change: [-0.1710% +0.2828% +0.6806%] (p = 0.20 > 0.05)
                        No change in performance detected.
Found 15 outliers among 100 measurements (15.00%)
  1 (1.00%) low mild
  8 (8.00%) high mild
  6 (6.00%) high severe

enter_many/enabled      time:   [13.181 ns 13.814 ns 14.530 ns]                                
                        change: [+13.428% +17.719% +22.699%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 21 outliers among 100 measurements (21.00%)
  5 (5.00%) high mild
  16 (16.00%) high severe
enter_many/disabled     time:   [398.91 ps 406.27 ps 412.87 ps]                                 
                        change: [-33.273% -32.181% -31.115%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 14 outliers among 100 measurements (14.00%)
  1 (1.00%) low mild
  12 (12.00%) high mild
  1 (1.00%) high severe

     Running benches/filter.rs (target/release/deps/filter-a0b78a2f4e9c7618)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

static/baseline_single_threaded                                                                             
                        time:   [36.516 ns 36.978 ns 37.465 ns]
                        change: [-1.5662% -0.2440% +1.4967%] (p = 0.76 > 0.05)
                        No change in performance detected.
Found 34 outliers among 100 measurements (34.00%)
  22 (22.00%) low severe
  5 (5.00%) high mild
  7 (7.00%) high severe
static/single_threaded  time:   [19.110 ns 19.244 ns 19.399 ns]                                    
                        change: [-3.2760% -2.7748% -2.3131%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 17 outliers among 100 measurements (17.00%)
  2 (2.00%) low severe
  1 (1.00%) low mild
  11 (11.00%) high mild
  3 (3.00%) high severe
static/single_threaded_reload                                                                            
                        time:   [72.653 ns 72.879 ns 73.104 ns]
                        change: [+4.1518% +4.4689% +4.8032%] (p = 0.00 < 0.05)
                        Performance has regressed.
static/enabled_one      time:   [9.7906 ns 9.9127 ns 10.039 ns]                                
                        change: [+7.1095% +8.1957% +9.3778%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 5 outliers among 100 measurements (5.00%)
  1 (1.00%) low mild
  4 (4.00%) high mild
static/enabled_one_reload                                                                             
                        time:   [35.344 ns 35.597 ns 35.957 ns]
                        change: [+1.8109% +2.3850% +2.9723%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 2 outliers among 100 measurements (2.00%)
  1 (1.00%) high mild
  1 (1.00%) high severe
static/enabled_many     time:   [10.012 ns 10.188 ns 10.389 ns]                                 
                        change: [+5.5148% +6.9218% +8.3716%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) high mild
  3 (3.00%) high severe
static/enabled_many_reload                                                                             
                        time:   [35.593 ns 35.718 ns 35.826 ns]
                        change: [+0.0160% +0.6955% +1.2739%] (p = 0.03 < 0.05)
                        Change within noise threshold.
Found 39 outliers among 100 measurements (39.00%)
  19 (19.00%) low severe
  1 (1.00%) low mild
  4 (4.00%) high mild
  15 (15.00%) high severe
static/disabled_level_one                                                                            
                        time:   [267.70 ps 269.15 ps 270.17 ps]
                        change: [-0.6096% +0.3690% +1.1338%] (p = 0.44 > 0.05)
                        No change in performance detected.
Found 2 outliers among 100 measurements (2.00%)
  1 (1.00%) low severe
  1 (1.00%) low mild
static/disabled_level_one_reload                                                                            
                        time:   [271.14 ps 272.08 ps 272.93 ps]
                        change: [-7.1425% -5.0277% -3.4662%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 29 outliers among 100 measurements (29.00%)
  5 (5.00%) low severe
  10 (10.00%) low mild
  5 (5.00%) high mild
  9 (9.00%) high severe
static/disabled_level_many                                                                            
                        time:   [270.81 ps 272.26 ps 274.02 ps]
                        change: [-4.3175% -3.3743% -2.4379%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 11 outliers among 100 measurements (11.00%)
  1 (1.00%) low mild
  7 (7.00%) high mild
  3 (3.00%) high severe
static/disabled_level_many_reload                                                                            
                        time:   [271.80 ps 272.98 ps 274.02 ps]
                        change: [-50.131% -48.947% -47.851%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) low severe
  2 (2.00%) high mild
  1 (1.00%) high severe
static/disabled_one     time:   [542.62 ps 549.78 ps 558.45 ps]                                 
                        change: [+0.4463% +1.7051% +2.8451%] (p = 0.00 < 0.05)
                        Change within noise threshold.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) low severe
  1 (1.00%) high mild
  2 (2.00%) high severe
static/disabled_one_reload                                                                             
                        time:   [537.00 ps 539.19 ps 541.43 ps]
                        change: [-0.9815% +1.3791% +4.7193%] (p = 0.35 > 0.05)
                        No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
  1 (1.00%) high mild
  7 (7.00%) high severe
static/disabled_many    time:   [394.76 ps 399.08 ps 404.10 ps]                                 
                        change: [-22.555% -21.234% -19.910%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 16 outliers among 100 measurements (16.00%)
  2 (2.00%) low severe
  11 (11.00%) high mild
  3 (3.00%) high severe
static/disabled_many_reload                                                                             
                        time:   [540.92 ps 543.58 ps 547.40 ps]
                        change: [+35.424% +36.370% +37.659%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 22 outliers among 100 measurements (22.00%)
  7 (7.00%) low severe
  5 (5.00%) low mild
  5 (5.00%) high mild
  5 (5.00%) high severe
static/baseline_multithreaded                                                                            
                        time:   [2.1400 µs 2.1784 µs 2.2205 µs]
                        change: [-2.3132% +3.0388% +11.120%] (p = 0.46 > 0.05)
                        No change in performance detected.
Found 9 outliers among 100 measurements (9.00%)
  6 (6.00%) high mild
  3 (3.00%) high severe
static/multithreaded    time:   [2.1392 µs 2.2382 µs 2.3996 µs]                                 
                        change: [-9.1803% -2.2338% +4.1798%] (p = 0.56 > 0.05)
                        No change in performance detected.
Found 11 outliers among 100 measurements (11.00%)
  6 (6.00%) high mild
  5 (5.00%) high severe
static/multithreaded_reload                                                                            
                        time:   [2.1634 µs 2.2828 µs 2.4341 µs]
                        change: [-3.7332% +7.3985% +28.276%] (p = 0.54 > 0.05)
                        No change in performance detected.
Found 9 outliers among 100 measurements (9.00%)
  1 (1.00%) low mild
  2 (2.00%) high mild
  6 (6.00%) high severe

dynamic/baseline_single_threaded                                                                            
                        time:   [88.535 ns 88.706 ns 88.906 ns]
                        change: [+3.8891% +4.4371% +4.9853%] (p = 0.00 < 0.05)
                        Performance has regressed.
dynamic/single_threaded time:   [320.75 ns 322.30 ns 323.78 ns]                                    
                        change: [+8.6341% +9.2984% +9.9768%] (p = 0.00 < 0.05)
                        Performance has regressed.
dynamic/single_threaded_reload                                                                            
                        time:   [455.34 ns 457.22 ns 459.06 ns]
                        change: [+3.1571% +3.8714% +4.5647%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high mild
dynamic/baseline_multithreaded                                                                            
                        time:   [2.2777 µs 2.3154 µs 2.3569 µs]
                        change: [-10.159% -4.7730% -0.0162%] (p = 0.08 > 0.05)
                        No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
  1 (1.00%) low mild
  5 (5.00%) high mild
  2 (2.00%) high severe
dynamic/multithreaded   time:   [5.2685 µs 5.3217 µs 5.3799 µs]                                  
                        change: [+1.3040% +3.4909% +5.7262%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) high mild
  2 (2.00%) high severe
dynamic/multithreaded_reload                                                                            
                        time:   [5.3351 µs 5.4369 µs 5.5632 µs]
                        change: [-6.5225% -4.0281% -1.1313%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 8 outliers among 100 measurements (8.00%)
  3 (3.00%) high mild
  5 (5.00%) high severe

mixed/disabled          time:   [22.196 ns 22.392 ns 22.586 ns]                            
                        change: [+3.7562% +5.2872% +7.3026%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) low mild
  2 (2.00%) high severe
mixed/disabled_by_level time:   [532.36 ps 537.00 ps 544.61 ps]                                     
                        change: [+95.914% +96.997% +98.324%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe

     Running benches/filter_log.rs (target/release/deps/filter_log-50f273c98a259a10)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

log/static/baseline_single_threaded                                                                            
                        time:   [191.02 ns 191.84 ns 192.87 ns]
                        change: [-3.6056% -2.9699% -2.2678%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 9 outliers among 100 measurements (9.00%)
  1 (1.00%) low severe
  2 (2.00%) high mild
  6 (6.00%) high severe
log/static/single_threaded                                                                            
                        time:   [147.32 ns 147.88 ns 148.39 ns]
                        change: [-2.5760% -2.0620% -1.5860%] (p = 0.00 < 0.05)
                        Performance has improved.
log/static/enabled_one  time:   [62.989 ns 63.573 ns 64.418 ns]                                   
                        change: [-2.7884% -1.7406% -0.6132%] (p = 0.00 < 0.05)
                        Change within noise threshold.
Found 10 outliers among 100 measurements (10.00%)
  1 (1.00%) low mild
  6 (6.00%) high mild
  3 (3.00%) high severe
log/static/enabled_many time:   [64.211 ns 64.851 ns 65.631 ns]                                    
                        change: [+0.6864% +2.6954% +4.8768%] (p = 0.01 < 0.05)
                        Change within noise threshold.
Found 21 outliers among 100 measurements (21.00%)
  2 (2.00%) low severe
  8 (8.00%) low mild
  2 (2.00%) high mild
  9 (9.00%) high severe
log/static/disabled_level_one                                                                             
                        time:   [10.334 ns 10.393 ns 10.454 ns]
                        change: [-0.1479% +0.4038% +0.9295%] (p = 0.15 > 0.05)
                        No change in performance detected.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe
log/static/disabled_level_many                                                                             
                        time:   [10.250 ns 10.277 ns 10.305 ns]
                        change: [-2.4952% -2.0210% -1.5455%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 3 outliers among 100 measurements (3.00%)
  2 (2.00%) high mild
  1 (1.00%) high severe
log/static/disabled_one time:   [31.665 ns 32.025 ns 32.538 ns]                                     
                        change: [+3.8632% +6.4333% +9.1978%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 15 outliers among 100 measurements (15.00%)
  2 (2.00%) high mild
  13 (13.00%) high severe
log/static/disabled_many                                                                             
                        time:   [43.232 ns 43.987 ns 44.877 ns]
                        change: [+0.4186% +1.9565% +3.6905%] (p = 0.01 < 0.05)
                        Change within noise threshold.
Found 10 outliers among 100 measurements (10.00%)
  3 (3.00%) high mild
  7 (7.00%) high severe
log/static/baseline_multithreaded                                                                            
                        time:   [2.3596 µs 2.4264 µs 2.5045 µs]
                        change: [-2.4559% +1.2536% +5.1574%] (p = 0.53 > 0.05)
                        No change in performance detected.
Found 6 outliers among 100 measurements (6.00%)
  3 (3.00%) high mild
  3 (3.00%) high severe
log/static/multithreaded                                                                            
                        time:   [2.3865 µs 2.4380 µs 2.5015 µs]
                        change: [-12.859% -8.8227% -5.0059%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 7 outliers among 100 measurements (7.00%)
  5 (5.00%) high mild
  2 (2.00%) high severe

log/dynamic/baseline_single_threaded                                                                            
                        time:   [241.79 ns 243.86 ns 246.20 ns]
                        change: [-17.410% -14.456% -11.497%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) high mild
  3 (3.00%) high severe
log/dynamic/single_threaded                                                                            
                        time:   [397.09 ns 399.71 ns 402.99 ns]
                        change: [-11.940% -8.7110% -5.6900%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) high mild
  2 (2.00%) high severe
log/dynamic/baseline_multithreaded                                                                            
                        time:   [2.8510 µs 3.2585 µs 3.8828 µs]
                        change: [-59.246% -40.004% -13.196%] (p = 0.03 < 0.05)
                        Performance has improved.
Found 8 outliers among 100 measurements (8.00%)
  4 (4.00%) high mild
  4 (4.00%) high severe
log/dynamic/multithreaded                                                                            
                        time:   [5.3162 µs 5.4600 µs 5.6548 µs]
                        change: [-5.9873% -0.6533% +4.3847%] (p = 0.82 > 0.05)
                        No change in performance detected.
Found 13 outliers among 100 measurements (13.00%)
  5 (5.00%) high mild
  8 (8.00%) high severe

log/mixed/disabled      time:   [39.149 ns 39.644 ns 40.258 ns]                                
                        change: [-6.3979% -4.7500% -3.1288%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 7 outliers among 100 measurements (7.00%)
  1 (1.00%) low severe
  1 (1.00%) low mild
  3 (3.00%) high mild
  2 (2.00%) high severe
log/mixed/disabled_by_level                                                                             
                        time:   [10.230 ns 10.279 ns 10.336 ns]
                        change: [-2.9983% -2.2028% -1.5059%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe

     Running benches/fmt.rs (target/release/deps/fmt-5fd59f85e424021b)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

new_span/single_thread/1                                                                            
                        time:   [428.08 ns 430.17 ns 432.57 ns]
                        thrpt:  [2.3117 Melem/s 2.3247 Melem/s 2.3360 Melem/s]
                 change:
                        time:   [-4.7517% -2.0241% +0.3673%] (p = 0.14 > 0.05)
                        thrpt:  [-0.3660% +2.0659% +4.9887%]
                        No change in performance detected.
Found 4 outliers among 100 measurements (4.00%)
  4 (4.00%) high mild
new_span/multithreaded/1                                                                            
                        time:   [6.3950 µs 6.4788 µs 6.5687 µs]
                        thrpt:  [152.24 Kelem/s 154.35 Kelem/s 156.37 Kelem/s]
                 change:
                        time:   [-1.1500% +1.0684% +3.0953%] (p = 0.35 > 0.05)
                        thrpt:  [-3.0023% -1.0571% +1.1634%]
                        No change in performance detected.
Found 5 outliers among 100 measurements (5.00%)
  4 (4.00%) high mild
  1 (1.00%) high severe
new_span/single_thread/10                                                                             
                        time:   [4.4856 µs 4.5228 µs 4.5804 µs]
                        thrpt:  [2.1832 Melem/s 2.2110 Melem/s 2.2293 Melem/s]
                 change:
                        time:   [+1.1207% +2.3225% +3.8443%] (p = 0.00 < 0.05)
                        thrpt:  [-3.7020% -2.2698% -1.1083%]
                        Performance has regressed.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe
new_span/multithreaded/10                                                                            
                        time:   [11.752 µs 11.902 µs 12.057 µs]
                        thrpt:  [829.42 Kelem/s 840.18 Kelem/s 850.91 Kelem/s]
                 change:
                        time:   [-11.218% -8.5497% -4.9792%] (p = 0.00 < 0.05)
                        thrpt:  [+5.2401% +9.3491% +12.636%]
                        Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
  4 (4.00%) high severe
new_span/single_thread/50                                                                             
                        time:   [22.415 µs 22.476 µs 22.550 µs]
                        thrpt:  [2.2173 Melem/s 2.2246 Melem/s 2.2307 Melem/s]
                 change:
                        time:   [+2.6439% +3.5174% +4.3156%] (p = 0.00 < 0.05)
                        thrpt:  [-4.1371% -3.3979% -2.5758%]
                        Performance has regressed.
Found 3 outliers among 100 measurements (3.00%)
  2 (2.00%) high mild
  1 (1.00%) high severe
new_span/multithreaded/50                                                                            
                        time:   [38.475 µs 39.332 µs 40.195 µs]
                        thrpt:  [1.2439 Melem/s 1.2712 Melem/s 1.2995 Melem/s]
                 change:
                        time:   [-19.540% -15.514% -12.217%] (p = 0.00 < 0.05)
                        thrpt:  [+13.917% +18.363% +24.285%]
                        Performance has improved.

event/root/single_threaded/1                                                                             
                        time:   [755.52 ns 759.00 ns 765.12 ns]
                        thrpt:  [1.3070 Melem/s 1.3175 Melem/s 1.3236 Melem/s]
                 change:
                        time:   [-13.193% -10.743% -8.4162%] (p = 0.00 < 0.05)
                        thrpt:  [+9.1896% +12.036% +15.198%]
                        Performance has improved.
Found 7 outliers among 100 measurements (7.00%)
  1 (1.00%) low severe
  1 (1.00%) low mild
  3 (3.00%) high mild
  2 (2.00%) high severe
event/root/multithreaded/1                                                                            
                        time:   [7.1969 µs 7.8239 µs 8.5684 µs]
                        thrpt:  [116.71 Kelem/s 127.81 Kelem/s 138.95 Kelem/s]
                 change:
                        time:   [-3.4174% +2.9239% +9.8875%] (p = 0.43 > 0.05)
                        thrpt:  [-8.9978% -2.8408% +3.5384%]
                        No change in performance detected.
Found 10 outliers among 100 measurements (10.00%)
  1 (1.00%) high mild
  9 (9.00%) high severe
event/unique_parent/single_threaded/1                                                                             
                        time:   [1.2484 µs 1.3049 µs 1.3726 µs]
                        thrpt:  [728.52 Kelem/s 766.35 Kelem/s 801.05 Kelem/s]
                 change:
                        time:   [-6.0863% -3.8810% -0.5191%] (p = 0.00 < 0.05)
                        thrpt:  [+0.5218% +4.0377% +6.4807%]
                        Change within noise threshold.
Found 9 outliers among 100 measurements (9.00%)
  5 (5.00%) high mild
  4 (4.00%) high severe
event/unique_parent/multithreaded/1                                                                            
                        time:   [7.9943 µs 8.1282 µs 8.3190 µs]
                        thrpt:  [120.21 Kelem/s 123.03 Kelem/s 125.09 Kelem/s]
                 change:
                        time:   [-8.6257% -6.4438% -4.3283%] (p = 0.00 < 0.05)
                        thrpt:  [+4.5242% +6.8876% +9.4400%]
                        Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
  2 (2.00%) high mild
  2 (2.00%) high severe
event/shared_parent/multithreaded/1                                                                            
                        time:   [7.7440 µs 7.9953 µs 8.3194 µs]
                        thrpt:  [120.20 Kelem/s 125.07 Kelem/s 129.13 Kelem/s]
                 change:
                        time:   [-2.2705% +0.3605% +3.7030%] (p = 0.86 > 0.05)
                        thrpt:  [-3.5708% -0.3592% +2.3233%]
                        No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
  4 (4.00%) high mild
  4 (4.00%) high severe
event/multi-parent/multithreaded/1                                                                            
                        time:   [11.383 µs 11.483 µs 11.585 µs]
                        thrpt:  [86.318 Kelem/s 87.089 Kelem/s 87.854 Kelem/s]
                 change:
                        time:   [-7.5150% -3.7190% -1.1426%] (p = 0.02 < 0.05)
                        thrpt:  [+1.1558% +3.8626% +8.1256%]
                        Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
  4 (4.00%) high mild
  1 (1.00%) high severe
event/root/single_threaded/10                                                                             
                        time:   [7.5810 µs 7.6134 µs 7.6507 µs]
                        thrpt:  [1.3071 Melem/s 1.3135 Melem/s 1.3191 Melem/s]
                 change:
                        time:   [-3.9041% -3.2030% -2.4671%] (p = 0.00 < 0.05)
                        thrpt:  [+2.5296% +3.3090% +4.0627%]
                        Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
  6 (6.00%) high mild
  7 (7.00%) high severe
event/root/multithreaded/10                                                                            
                        time:   [15.237 µs 15.710 µs 16.272 µs]
                        thrpt:  [614.54 Kelem/s 636.53 Kelem/s 656.30 Kelem/s]
                 change:
                        time:   [+0.5680% +5.1164% +12.246%] (p = 0.05 > 0.05)
                        thrpt:  [-10.910% -4.8674% -0.5648%]
                        No change in performance detected.
Found 7 outliers among 100 measurements (7.00%)
  2 (2.00%) high mild
  5 (5.00%) high severe
event/unique_parent/single_threaded/10                                                                             
                        time:   [12.558 µs 12.733 µs 12.938 µs]
                        thrpt:  [772.89 Kelem/s 785.36 Kelem/s 796.30 Kelem/s]
                 change:
                        time:   [-0.0957% +1.4286% +3.6621%] (p = 0.15 > 0.05)
                        thrpt:  [-3.5327% -1.4085% +0.0958%]
                        No change in performance detected.
Found 9 outliers among 100 measurements (9.00%)
  1 (1.00%) low mild
  4 (4.00%) high mild
  4 (4.00%) high severe
event/unique_parent/multithreaded/10                                                                            
                        time:   [21.510 µs 21.782 µs 22.103 µs]
                        thrpt:  [452.44 Kelem/s 459.09 Kelem/s 464.90 Kelem/s]
                 change:
                        time:   [+2.9047% +4.9615% +7.1321%] (p = 0.00 < 0.05)
                        thrpt:  [-6.6573% -4.7269% -2.8227%]
                        Performance has regressed.
Found 6 outliers among 100 measurements (6.00%)
  3 (3.00%) high mild
  3 (3.00%) high severe
event/shared_parent/multithreaded/10                                                                            
                        time:   [24.766 µs 25.136 µs 25.653 µs]
                        thrpt:  [389.82 Kelem/s 397.83 Kelem/s 403.77 Kelem/s]
                 change:
                        time:   [-42.093% -31.614% -20.969%] (p = 0.00 < 0.05)
                        thrpt:  [+26.532% +46.228% +72.690%]
                        Performance has improved.
Found 8 outliers among 100 measurements (8.00%)
  3 (3.00%) high mild
  5 (5.00%) high severe
event/multi-parent/multithreaded/10                                                                            
                        time:   [63.138 µs 63.410 µs 63.712 µs]
                        thrpt:  [156.96 Kelem/s 157.70 Kelem/s 158.38 Kelem/s]
                 change:
                        time:   [-0.0695% +1.0895% +1.9864%] (p = 0.03 < 0.05)
                        thrpt:  [-1.9477% -1.0777% +0.0695%]
                        Change within noise threshold.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high mild
event/root/single_threaded/50                                                                             
                        time:   [39.374 µs 39.885 µs 40.546 µs]
                        thrpt:  [1.2332 Melem/s 1.2536 Melem/s 1.2699 Melem/s]
                 change:
                        time:   [+0.1772% +1.2802% +2.4359%] (p = 0.02 < 0.05)
                        thrpt:  [-2.3779% -1.2640% -0.1769%]
                        Change within noise threshold.
Found 4 outliers among 100 measurements (4.00%)
  1 (1.00%) high mild
  3 (3.00%) high severe
event/root/multithreaded/50                                                                            
                        time:   [48.033 µs 48.281 µs 48.574 µs]
                        thrpt:  [1.0294 Melem/s 1.0356 Melem/s 1.0409 Melem/s]
                 change:
                        time:   [+1.2858% +2.1204% +2.9633%] (p = 0.00 < 0.05)
                        thrpt:  [-2.8780% -2.0763% -1.2694%]
                        Performance has regressed.
Found 4 outliers among 100 measurements (4.00%)
  4 (4.00%) high mild
event/unique_parent/single_threaded/50                                                                            
                        time:   [61.987 µs 62.490 µs 63.133 µs]
                        thrpt:  [791.98 Kelem/s 800.13 Kelem/s 806.61 Kelem/s]
                 change:
                        time:   [+0.9222% +1.7852% +2.8048%] (p = 0.00 < 0.05)
                        thrpt:  [-2.7283% -1.7539% -0.9137%]
                        Change within noise threshold.
Found 3 outliers among 100 measurements (3.00%)
  3 (3.00%) high severe
event/unique_parent/multithreaded/50                                                                            
                        time:   [76.611 µs 76.943 µs 77.317 µs]
                        thrpt:  [646.69 Kelem/s 649.83 Kelem/s 652.65 Kelem/s]
                 change:
                        time:   [+1.4698% +6.8019% +15.423%] (p = 0.03 < 0.05)
                        thrpt:  [-13.362% -6.3687% -1.4485%]
                        Performance has regressed.
Found 8 outliers among 100 measurements (8.00%)
  3 (3.00%) high mild
  5 (5.00%) high severe
event/shared_parent/multithreaded/50                                                                            
                        time:   [93.234 µs 93.572 µs 93.935 µs]
                        thrpt:  [532.28 Kelem/s 534.35 Kelem/s 536.28 Kelem/s]
                 change:
                        time:   [-2.3771% -1.9139% -1.4540%] (p = 0.00 < 0.05)
                        thrpt:  [+1.4755% +1.9512% +2.4350%]
                        Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
  1 (1.00%) low mild
  3 (3.00%) high mild
  1 (1.00%) high severe
event/multi-parent/multithreaded/50                                                                            
                        time:   [676.94 µs 679.70 µs 683.22 µs]
                        thrpt:  [73.183 Kelem/s 73.562 Kelem/s 73.861 Kelem/s]
                 change:
                        time:   [+0.5618% +1.2285% +1.8958%] (p = 0.00 < 0.05)
                        thrpt:  [-1.8605% -1.2136% -0.5587%]
                        Change within noise threshold.
Found 6 outliers among 100 measurements (6.00%)
  1 (1.00%) low mild
  4 (4.00%) high mild
  1 (1.00%) high severe

     Running benches/reload.rs (target/release/deps/reload-1042cb36c8e37637)
WARNING: HTML report generation will become a non-default optional feature in Criterion.rs 0.4.0.
This feature is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'html_reports' feature in your Cargo.toml.

WARNING: In Criterion.rs 0.4.0, running criterion benchmarks outside of cargo-criterion will become a default optional feature.
The statistical analysis and reporting is being moved to cargo-criterion (https://github.com/bheisler/cargo-criterion) and will be optional in a future version of Criterion.rs. To silence this warning, either switch to cargo-criterion or enable the 'cargo_bench_support' feature in your Cargo.toml.

reload/complex-collector                                                                             
                        time:   [646.06 ns 649.60 ns 652.99 ns]
                        change: [-1.6074% -0.6936% +0.0496%] (p = 0.10 > 0.05)
                        No change in performance detected.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) low severe
  1 (1.00%) low mild
  1 (1.00%) high mild
reload/complex-collector-reloadable                                                                             
                        time:   [662.84 ns 665.42 ns 668.16 ns]
                        change: [-0.6475% +0.0323% +0.7613%] (p = 0.93 > 0.05)
                        No change in performance detected.
Found 3 outliers among 100 measurements (3.00%)
  2 (2.00%) high mild
  1 (1.00%) high severe

     Running unittests src/lib.rs (target/release/deps/tracing_test-c26a128689022d5c)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/release/deps/tracing_tower-cedee69ca046e967)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
SUPERCILEX commented 8 months ago

The lint was added, so this will fail clippy soon: https://github.com/rust-lang/rust-clippy/issues/12015

m-rph commented 8 months ago

The lint will cause the code to fail in about 2 releases. Current trunk is for 1.77 release.

hawkw commented 8 months ago

Does this change require bumping our MSRV?

SUPERCILEX commented 8 months ago

No, it released in 1.59: https://github.com/rust-lang/rust/pull/91355

SUPERCILEX commented 7 months ago

Sounds good, done!