Skip to content

Conversation

ganeshnj
Copy link
Contributor

Summary of changes

Where is phase 1?
DataDog/datadog-aas-extension#336

Reason for change

Implementation details

Test coverage

Other details

@github-actions github-actions bot added the area:tracer The core tracer library (Datadog.Trace, does not include OpenTracing, native code, or integrations) label Aug 20, 2025
@ganeshnj ganeshnj changed the title [Phase 2] chore(trace-exporter): enable data pipeline based on Windows [Phase 2] chore(trace-exporter): enable data pipeline on Windows Aug 20, 2025
@dd-trace-dotnet-ci-bot
Copy link

dd-trace-dotnet-ci-bot bot commented Aug 20, 2025

Execution-Time Benchmarks Report ⏱️

Execution-time results for samples comparing the following branches/commits:

Execution-time benchmarks measure the whole time it takes to execute a program. And are intended to measure the one-off costs. Cases where the execution time results for the PR are worse than latest master results are shown in red. The following thresholds were used for comparing the execution times:

  • Welch test with statistical test for significance of 5%
  • Only results indicating a difference greater than 5% and 5 ms are considered.

Note that these results are based on a single point-in-time result for each branch. For full results, see the dashboard.

Graphs show the p99 interval based on the mean and StdDev of the test run, as well as the mean value of the run (shown as a diamond below the graph).

gantt
    title Execution time (ms) FakeDbCommand (.NET Framework 4.8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (73ms)  : 72, 75
     .   : milestone, 73,
    master - mean (73ms)  : 72, 75
     .   : milestone, 73,

    section Baseline
    This PR (7424) - mean (71ms)  : 64, 77
     .   : milestone, 71,
    master - mean (70ms)  : 65, 75
     .   : milestone, 70,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (1,031ms)  : 1012, 1051
     .   : milestone, 1031,
    master - mean (1,000ms)  : 966, 1034
     .   : milestone, 1000,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (110ms)  : 108, 111
     .   : milestone, 110,
    master - mean (109ms)  : 107, 111
     .   : milestone, 109,

    section Baseline
    This PR (7424) - mean (108ms)  : 106, 110
     .   : milestone, 108,
    master - mean (108ms)  : 106, 110
     .   : milestone, 108,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (727ms)  : 709, 745
     .   : milestone, 727,
    master - mean (707ms)  : 688, 726
     .   : milestone, 707,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (96ms)  : 94, 97
     .   : milestone, 96,
    master - mean (96ms)  : 94, 97
     .   : milestone, 96,

    section Baseline
    This PR (7424) - mean (95ms)  : 93, 97
     .   : milestone, 95,
    master - mean (95ms)  : 93, 98
     .   : milestone, 95,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (680ms)  : 659, 702
     .   : milestone, 680,
    master - mean (661ms)  : 639, 683
     .   : milestone, 661,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET 8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (95ms)  : 93, 98
     .   : milestone, 95,
    master - mean (95ms)  : 93, 97
     .   : milestone, 95,

    section Baseline
    This PR (7424) - mean (94ms)  : 92, 97
     .   : milestone, 94,
    master - mean (94ms)  : 92, 96
     .   : milestone, 94,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (608ms)  : 598, 618
     .   : milestone, 608,
    master - mean (601ms)  : 585, 617
     .   : milestone, 601,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Framework 4.8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (193ms)  : 191, 195
     .   : milestone, 193,
    master - mean (192ms)  : 191, 194
     .   : milestone, 192,

    section Baseline
    This PR (7424) - mean (189ms)  : 185, 193
     .   : milestone, 189,
    master - mean (189ms)  : 185, 194
     .   : milestone, 189,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (1,166ms)  : crit, 1146, 1186
     .   : crit, milestone, 1166,
    master - mean (1,095ms)  : 1068, 1122
     .   : milestone, 1095,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (274ms)  : 270, 278
     .   : milestone, 274,
    master - mean (273ms)  : 270, 276
     .   : milestone, 273,

    section Baseline
    This PR (7424) - mean (274ms)  : 270, 278
     .   : milestone, 274,
    master - mean (273ms)  : 268, 279
     .   : milestone, 273,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (943ms)  : crit, 924, 963
     .   : crit, milestone, 943,
    master - mean (892ms)  : 857, 926
     .   : milestone, 892,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (265ms)  : 262, 268
     .   : milestone, 265,
    master - mean (265ms)  : 262, 268
     .   : milestone, 265,

    section Baseline
    This PR (7424) - mean (266ms)  : 261, 270
     .   : milestone, 266,
    master - mean (266ms)  : 262, 270
     .   : milestone, 266,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (927ms)  : crit, 904, 949
     .   : crit, milestone, 927,
    master - mean (869ms)  : 837, 901
     .   : milestone, 869,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7424) - mean (265ms)  : 262, 268
     .   : milestone, 265,
    master - mean (265ms)  : 262, 268
     .   : milestone, 265,

    section Baseline
    This PR (7424) - mean (266ms)  : 259, 272
     .   : milestone, 266,
    master - mean (265ms)  : 261, 270
     .   : milestone, 265,

    section CallTarget+Inlining+NGEN
    This PR (7424) - mean (820ms)  : 802, 838
     .   : milestone, 820,
    master - mean (786ms)  : 760, 811
     .   : milestone, 786,

Loading

@pr-commenter
Copy link

pr-commenter bot commented Aug 20, 2025

Benchmarks

Benchmarks Report for benchmark platform 🐌

Benchmarks for #7424 compared to master:

  • 4 benchmarks are slower, with geometric mean 1.147
  • 3 benchmarks have fewer allocations
  • 9 benchmarks have more allocations

The following thresholds were used for comparing the benchmark speeds:

  • Mann–Whitney U test with statistical test for significance of 5%
  • Only results indicating a difference greater than 10% and 0.3 ns are considered.

Allocation changes below 0.5% are ignored.

Benchmark details

Benchmarks.Trace.ActivityBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑netcoreapp3.1 5.61 KB 5.73 KB 123 B 2.19%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartStopWithChild net6.0 10.6μs 52.1ns 227ns 0 0 0 5.51 KB
master StartStopWithChild netcoreapp3.1 13.8μs 61.1ns 237ns 0 0 0 5.61 KB
master StartStopWithChild net472 21.8μs 120ns 690ns 0.987 0.329 0.11 6.03 KB
#7424 StartStopWithChild net6.0 10.7μs 59.4ns 371ns 0 0 0 5.49 KB
#7424 StartStopWithChild netcoreapp3.1 13.6μs 63.1ns 244ns 0 0 0 5.73 KB
#7424 StartStopWithChild net472 21.5μs 120ns 769ns 0.859 0.215 0 6.06 KB
Benchmarks.Trace.AgentWriterBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 914μs 73.7ns 285ns 0 0 0 2.71 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 1.04ms 690ns 2.67μs 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces net472 1.18ms 52.9ns 198ns 0 0 0 3.31 KB
#7424 WriteAndFlushEnrichedTraces net6.0 917μs 116ns 448ns 0 0 0 2.7 KB
#7424 WriteAndFlushEnrichedTraces netcoreapp3.1 1.04ms 128ns 478ns 0 0 0 2.7 KB
#7424 WriteAndFlushEnrichedTraces net472 1.2ms 334ns 1.29μs 0 0 0 3.31 KB
Benchmarks.Trace.Asm.AppSecBodyBenchmark - Slower ⚠️ More allocations ⚠️

Slower ⚠️ in #7424

Benchmark diff/base Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleMoreComplexBody‑net6.0 1.166 335,745.72 391,403.65
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleSimpleBody‑net472 1.143 423,791.25 484,446.63
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleSimpleBody‑net6.0 1.142 327,205.57 373,612.99
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleMoreComplexBody‑net472 1.139 432,569.61 492,644.23

More allocations ⚠️ in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleSimpleBody‑net472 194.24 KB 201.89 KB 7.65 KB 3.94%
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleMoreComplexBody‑net472 197.76 KB 205.39 KB 7.64 KB 3.86%
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleSimpleBody‑netcoreapp3.1 174.18 KB 179.88 KB 5.7 KB 3.27%
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleSimpleBody‑net6.0 172.08 KB 177.65 KB 5.57 KB 3.24%
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleMoreComplexBody‑netcoreapp3.1 177.6 KB 183.3 KB 5.7 KB 3.21%
Benchmarks.Trace.Asm.AppSecBodyBenchmark.AllCycleMoreComplexBody‑net6.0 175.58 KB 181.15 KB 5.57 KB 3.17%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net6.0 326μs 649ns 2.51μs 0 0 0 172.08 KB
master AllCycleSimpleBody netcoreapp3.1 496μs 467ns 1.81μs 0 0 0 174.18 KB
master AllCycleSimpleBody net472 424μs 176ns 683ns 29.2 0 0 194.24 KB
master AllCycleMoreComplexBody net6.0 336μs 693ns 2.68μs 0 0 0 175.58 KB
master AllCycleMoreComplexBody netcoreapp3.1 498μs 748ns 2.8μs 0 0 0 177.6 KB
master AllCycleMoreComplexBody net472 433μs 85.3ns 308ns 30.2 0 0 197.76 KB
master ObjectExtractorSimpleBody net6.0 324ns 0.527ns 2.04ns 0 0 0 280 B
master ObjectExtractorSimpleBody netcoreapp3.1 402ns 0.613ns 2.37ns 0 0 0 272 B
master ObjectExtractorSimpleBody net472 299ns 0.0355ns 0.133ns 0.0436 0 0 281 B
master ObjectExtractorMoreComplexBody net6.0 6.22μs 27.4ns 106ns 0 0 0 3.78 KB
master ObjectExtractorMoreComplexBody netcoreapp3.1 7.85μs 23.7ns 92ns 0 0 0 3.69 KB
master ObjectExtractorMoreComplexBody net472 6.69μs 1.11ns 4.3ns 0.602 0 0 3.8 KB
#7424 AllCycleSimpleBody net6.0 373μs 976ns 3.78μs 0 0 0 177.65 KB
#7424 AllCycleSimpleBody netcoreapp3.1 531μs 1.06μs 4.11μs 0 0 0 179.88 KB
#7424 AllCycleSimpleBody net472 484μs 241ns 901ns 31.2 0 0 201.89 KB
#7424 AllCycleMoreComplexBody net6.0 391μs 781ns 3.02μs 0 0 0 181.15 KB
#7424 AllCycleMoreComplexBody netcoreapp3.1 553μs 1.03μs 4.01μs 0 0 0 183.3 KB
#7424 AllCycleMoreComplexBody net472 493μs 146ns 548ns 31.2 0 0 205.39 KB
#7424 ObjectExtractorSimpleBody net6.0 316ns 1.62ns 7.23ns 0 0 0 280 B
#7424 ObjectExtractorSimpleBody netcoreapp3.1 401ns 2.18ns 12.9ns 0 0 0 272 B
#7424 ObjectExtractorSimpleBody net472 299ns 0.0655ns 0.254ns 0.0437 0 0 281 B
#7424 ObjectExtractorMoreComplexBody net6.0 6.39μs 16.3ns 63ns 0 0 0 3.78 KB
#7424 ObjectExtractorMoreComplexBody netcoreapp3.1 7.85μs 39.1ns 175ns 0 0 0 3.69 KB
#7424 ObjectExtractorMoreComplexBody net472 6.79μs 3.29ns 12.3ns 0.577 0 0 3.8 KB
Benchmarks.Trace.Asm.AppSecEncoderBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EncodeArgs net6.0 75.6μs 344ns 1.33μs 0 0 0 32.4 KB
master EncodeArgs netcoreapp3.1 97.5μs 178ns 689ns 0 0 0 32.4 KB
master EncodeArgs net472 109μs 9.8ns 36.7ns 4.92 0 0 32.5 KB
master EncodeLegacyArgs net6.0 149μs 33ns 123ns 0 0 0 2.15 KB
master EncodeLegacyArgs netcoreapp3.1 198μs 279ns 1.08μs 0 0 0 2.14 KB
master EncodeLegacyArgs net472 264μs 48.1ns 186ns 0 0 0 2.17 KB
#7424 EncodeArgs net6.0 77.7μs 19.8ns 71.3ns 0 0 0 32.4 KB
#7424 EncodeArgs netcoreapp3.1 98μs 232ns 900ns 0 0 0 32.4 KB
#7424 EncodeArgs net472 109μs 18.8ns 72.9ns 4.9 0 0 32.51 KB
#7424 EncodeLegacyArgs net6.0 145μs 61.2ns 229ns 0 0 0 2.15 KB
#7424 EncodeLegacyArgs netcoreapp3.1 196μs 169ns 653ns 0 0 0 2.14 KB
#7424 EncodeLegacyArgs net472 266μs 20.9ns 81ns 0 0 0 2.17 KB
Benchmarks.Trace.Asm.AppSecWafBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunWafRealisticBenchmark net6.0 392μs 155ns 579ns 0 0 0 4.55 KB
master RunWafRealisticBenchmark netcoreapp3.1 415μs 257ns 994ns 0 0 0 4.48 KB
master RunWafRealisticBenchmark net472 438μs 52.7ns 197ns 0 0 0 4.66 KB
master RunWafRealisticBenchmarkWithAttack net6.0 289μs 137ns 531ns 0 0 0 2.24 KB
master RunWafRealisticBenchmarkWithAttack netcoreapp3.1 300μs 215ns 832ns 0 0 0 2.22 KB
master RunWafRealisticBenchmarkWithAttack net472 318μs 38.4ns 144ns 0 0 0 2.29 KB
#7424 RunWafRealisticBenchmark net6.0 392μs 143ns 554ns 0 0 0 4.55 KB
#7424 RunWafRealisticBenchmark netcoreapp3.1 414μs 253ns 877ns 0 0 0 4.48 KB
#7424 RunWafRealisticBenchmark net472 432μs 65.4ns 253ns 0 0 0 4.66 KB
#7424 RunWafRealisticBenchmarkWithAttack net6.0 290μs 54ns 209ns 0 0 0 2.24 KB
#7424 RunWafRealisticBenchmarkWithAttack netcoreapp3.1 301μs 166ns 621ns 0 0 0 2.22 KB
#7424 RunWafRealisticBenchmarkWithAttack net472 313μs 24.6ns 92.1ns 0 0 0 2.29 KB
Benchmarks.Trace.AspNetCoreBenchmark - Same speed ✔️ Fewer allocations 🎉

Fewer allocations 🎉 in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.AspNetCoreBenchmark.SendRequest‑netcoreapp3.1 17.65 KB 17.42 KB -229 B -1.30%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net6.0 60.7μs 291ns 1.27μs 0 0 0 14.52 KB
master SendRequest netcoreapp3.1 71.6μs 348ns 1.48μs 0 0 0 17.65 KB
master SendRequest net472 0.00405ns 0.00184ns 0.00712ns 0 0 0 0 b
#7424 SendRequest net6.0 61.2μs 287ns 1.11μs 0 0 0 14.52 KB
#7424 SendRequest netcoreapp3.1 70.1μs 226ns 1.37μs 0 0 0 17.42 KB
#7424 SendRequest net472 0.00965ns 0.00327ns 0.0127ns 0 0 0 0 b
Benchmarks.Trace.CharSliceBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSlice‑net6.0 2 B 7 B 5 B 250.00%

Fewer allocations 🎉 in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 3 B 1 B -2 B -66.67%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master OriginalCharSlice net6.0 1.92ms 831ns 3.22μs 0 0 0 640.01 KB
master OriginalCharSlice netcoreapp3.1 2.16ms 8.41μs 32.6μs 0 0 0 640 KB
master OriginalCharSlice net472 2.59ms 335ns 1.3μs 100 0 0 641.95 KB
master OptimizedCharSlice net6.0 1.38ms 386ns 1.44μs 0 0 0 2 B
master OptimizedCharSlice netcoreapp3.1 1.87ms 494ns 1.91μs 0 0 0 1 B
master OptimizedCharSlice net472 2ms 264ns 1.02μs 0 0 0 0 b
master OptimizedCharSliceWithPool net6.0 800μs 56.9ns 220ns 0 0 0 3 B
master OptimizedCharSliceWithPool netcoreapp3.1 849μs 79.8ns 309ns 0 0 0 1 B
master OptimizedCharSliceWithPool net472 1.13ms 69.6ns 261ns 0 0 0 0 b
#7424 OriginalCharSlice net6.0 1.9ms 483ns 1.87μs 0 0 0 640.01 KB
#7424 OriginalCharSlice netcoreapp3.1 2.12ms 1.27μs 4.76μs 0 0 0 640 KB
#7424 OriginalCharSlice net472 2.66ms 352ns 1.22μs 100 0 0 641.95 KB
#7424 OptimizedCharSlice net6.0 1.43ms 365ns 1.42μs 0 0 0 7 B
#7424 OptimizedCharSlice netcoreapp3.1 1.85ms 448ns 1.73μs 0 0 0 1 B
#7424 OptimizedCharSlice net472 2.03ms 505ns 1.96μs 0 0 0 0 b
#7424 OptimizedCharSliceWithPool net6.0 798μs 41.8ns 162ns 0 0 0 1 B
#7424 OptimizedCharSliceWithPool netcoreapp3.1 837μs 177ns 687ns 0 0 0 1 B
#7424 OptimizedCharSliceWithPool net472 1.13ms 60.3ns 234ns 0 0 0 0 b
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 722μs 1.32μs 5.1μs 0 0 0 41.7 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 689μs 3.22μs 12.9μs 0 0 0 41.9 KB
master WriteAndFlushEnrichedTraces net472 929μs 4.47μs 19.5μs 4.46 0 0 56.17 KB
#7424 WriteAndFlushEnrichedTraces net6.0 703μs 766ns 3.34μs 0 0 0 41.74 KB
#7424 WriteAndFlushEnrichedTraces netcoreapp3.1 725μs 2.55μs 9.86μs 0 0 0 42 KB
#7424 WriteAndFlushEnrichedTraces net472 961μs 4.09μs 15.8μs 4.46 0 0 56.17 KB
Benchmarks.Trace.DbCommandBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteNonQuery net6.0 1.82μs 9.65ns 47.3ns 0 0 0 1.02 KB
master ExecuteNonQuery netcoreapp3.1 2.52μs 3.47ns 13ns 0 0 0 1.02 KB
master ExecuteNonQuery net472 2.75μs 7.42ns 28.7ns 0.151 0.0138 0 987 B
#7424 ExecuteNonQuery net6.0 1.77μs 9.53ns 48.6ns 0 0 0 1.02 KB
#7424 ExecuteNonQuery netcoreapp3.1 2.45μs 2.41ns 9.33ns 0 0 0 1.02 KB
#7424 ExecuteNonQuery net472 2.77μs 3.89ns 15.1ns 0.151 0.0137 0 987 B
Benchmarks.Trace.ElasticsearchBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master CallElasticsearch net6.0 1.7μs 4.37ns 15.1ns 0 0 0 1.03 KB
master CallElasticsearch netcoreapp3.1 2.26μs 10.8ns 41.7ns 0 0 0 1.03 KB
master CallElasticsearch net472 3.57μs 2.03ns 7.85ns 0.161 0 0 1.04 KB
master CallElasticsearchAsync net6.0 1.87μs 5.74ns 22.2ns 0 0 0 1.01 KB
master CallElasticsearchAsync netcoreapp3.1 2.35μs 9.59ns 37.2ns 0 0 0 1.08 KB
master CallElasticsearchAsync net472 3.81μs 2.46ns 9.22ns 0.171 0 0 1.1 KB
#7424 CallElasticsearch net6.0 1.72μs 8.19ns 38.4ns 0 0 0 1.03 KB
#7424 CallElasticsearch netcoreapp3.1 2.33μs 11.8ns 54ns 0 0 0 1.03 KB
#7424 CallElasticsearch net472 3.55μs 2.33ns 9.04ns 0.159 0 0 1.04 KB
#7424 CallElasticsearchAsync net6.0 1.87μs 7.55ns 27.2ns 0 0 0 1.01 KB
#7424 CallElasticsearchAsync netcoreapp3.1 2.4μs 12ns 50.9ns 0 0 0 1.08 KB
#7424 CallElasticsearchAsync net472 3.74μs 3.34ns 12.9ns 0.169 0 0 1.1 KB
Benchmarks.Trace.GraphQLBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteAsync net6.0 1.76μs 9.07ns 44.4ns 0 0 0 953 B
master ExecuteAsync netcoreapp3.1 2.46μs 2.37ns 9.17ns 0 0 0 952 B
master ExecuteAsync net472 2.58μs 2.07ns 8.01ns 0.141 0 0 915 B
#7424 ExecuteAsync net6.0 1.85μs 0.706ns 2.73ns 0 0 0 952 B
#7424 ExecuteAsync netcoreapp3.1 2.47μs 2.21ns 8.55ns 0 0 0 952 B
#7424 ExecuteAsync net472 2.53μs 4.36ns 16.9ns 0.14 0 0 915 B
Benchmarks.Trace.HttpClientBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendAsync net6.0 7.01μs 14.8ns 57.2ns 0 0 0 2.36 KB
master SendAsync netcoreapp3.1 8.56μs 16.5ns 63.9ns 0 0 0 2.9 KB
master SendAsync net472 12.3μs 9.27ns 35.9ns 0.491 0 0 3.18 KB
#7424 SendAsync net6.0 6.79μs 12.5ns 48.5ns 0 0 0 2.36 KB
#7424 SendAsync netcoreapp3.1 8.26μs 7.42ns 28.7ns 0 0 0 2.9 KB
#7424 SendAsync net472 12.1μs 17.7ns 68.6ns 0.485 0 0 3.18 KB
Benchmarks.Trace.Iast.StringAspectsBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net6.0 43.1 KB 45.63 KB 2.53 KB 5.86%

Fewer allocations 🎉 in #7424

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑netcoreapp3.1 256.68 KB 255.35 KB -1.33 KB -0.52%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StringConcatBenchmark net6.0 49.4μs 228ns 1.31μs 0 0 0 43.1 KB
master StringConcatBenchmark netcoreapp3.1 50.6μs 290ns 2.6μs 0 0 0 43.18 KB
master StringConcatBenchmark net472 56.8μs 160ns 619ns 0 0 0 65.54 KB
master StringConcatAspectBenchmark net6.0 487μs 2.12μs 9.48μs 0 0 0 276.95 KB
master StringConcatAspectBenchmark netcoreapp3.1 508μs 2.56μs 10.9μs 0 0 0 256.68 KB
master StringConcatAspectBenchmark net472 408μs 1.86μs 8.09μs 0 0 0 278.61 KB
#7424 StringConcatBenchmark net6.0 44.2μs 254ns 2.12μs 0 0 0 45.63 KB
#7424 StringConcatBenchmark netcoreapp3.1 50.2μs 292ns 2.58μs 0 0 0 43.03 KB
#7424 StringConcatBenchmark net472 56.9μs 197ns 711ns 0 0 0 65.54 KB
#7424 StringConcatAspectBenchmark net6.0 518μs 2.64μs 13.2μs 0 0 0 276.01 KB
#7424 StringConcatAspectBenchmark netcoreapp3.1 488μs 882ns 3.18μs 0 0 0 255.35 KB
#7424 StringConcatAspectBenchmark net472 410μs 2.18μs 11.6μs 0 0 0 278.53 KB
Benchmarks.Trace.ILoggerBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 2.57μs 5.94ns 22.2ns 0 0 0 1.7 KB
master EnrichedLog netcoreapp3.1 3.39μs 17.6ns 84.2ns 0 0 0 1.7 KB
master EnrichedLog net472 4μs 4.14ns 16ns 0.241 0 0 1.64 KB
#7424 EnrichedLog net6.0 2.53μs 1.23ns 4.77ns 0 0 0 1.7 KB
#7424 EnrichedLog netcoreapp3.1 3.38μs 10.7ns 41.5ns 0 0 0 1.7 KB
#7424 EnrichedLog net472 4.1μs 3.52ns 13.6ns 0.246 0 0 1.64 KB
Benchmarks.Trace.Log4netBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 123μs 82.8ns 321ns 0 0 0 4.31 KB
master EnrichedLog netcoreapp3.1 127μs 187ns 700ns 0 0 0 4.31 KB
master EnrichedLog net472 168μs 113ns 439ns 0 0 0 4.52 KB
#7424 EnrichedLog net6.0 122μs 42.3ns 164ns 0 0 0 4.31 KB
#7424 EnrichedLog netcoreapp3.1 127μs 261ns 940ns 0 0 0 4.31 KB
#7424 EnrichedLog net472 167μs 53.4ns 185ns 0 0 0 4.52 KB
Benchmarks.Trace.NLogBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 5.03μs 22.9ns 88.8ns 0 0 0 2.26 KB
master EnrichedLog netcoreapp3.1 6.62μs 12.9ns 48.2ns 0 0 0 2.26 KB
master EnrichedLog net472 7.39μs 3.66ns 13.7ns 0.297 0 0 2.08 KB
#7424 EnrichedLog net6.0 5.04μs 8.15ns 31.6ns 0 0 0 2.26 KB
#7424 EnrichedLog netcoreapp3.1 6.78μs 20.6ns 79.9ns 0 0 0 2.26 KB
#7424 EnrichedLog net472 7.4μs 3.04ns 11.8ns 0.295 0 0 2.08 KB
Benchmarks.Trace.RedisBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendReceive net6.0 1.96μs 9.64ns 43.1ns 0 0 0 1.2 KB
master SendReceive netcoreapp3.1 2.54μs 12.8ns 54.1ns 0 0 0 1.2 KB
master SendReceive net472 3.1μs 1.93ns 7.48ns 0.185 0 0 1.2 KB
#7424 SendReceive net6.0 2.01μs 10.8ns 53.8ns 0 0 0 1.2 KB
#7424 SendReceive netcoreapp3.1 2.63μs 8.73ns 32.6ns 0 0 0 1.2 KB
#7424 SendReceive net472 3.04μs 4.83ns 18.7ns 0.184 0 0 1.2 KB
Benchmarks.Trace.SerilogBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 4.06μs 18.6ns 72.1ns 0 0 0 1.58 KB
master EnrichedLog netcoreapp3.1 5.66μs 7.1ns 27.5ns 0 0 0 1.63 KB
master EnrichedLog net472 6.63μs 6.79ns 26.3ns 0.296 0 0 2.03 KB
#7424 EnrichedLog net6.0 4.18μs 6.39ns 24.8ns 0 0 0 1.58 KB
#7424 EnrichedLog netcoreapp3.1 5.64μs 13.2ns 51.1ns 0 0 0 1.63 KB
#7424 EnrichedLog net472 6.66μs 5.98ns 22.4ns 0.3 0 0 2.03 KB
Benchmarks.Trace.SpanBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net6.0 731ns 3.89ns 20.9ns 0 0 0 576 B
master StartFinishSpan netcoreapp3.1 950ns 0.301ns 1.17ns 0 0 0 576 B
master StartFinishSpan net472 889ns 0.0801ns 0.3ns 0.0894 0 0 578 B
master StartFinishScope net6.0 889ns 4.32ns 17.8ns 0 0 0 696 B
master StartFinishScope netcoreapp3.1 1.14μs 0.501ns 1.94ns 0 0 0 696 B
master StartFinishScope net472 1.09μs 0.593ns 2.3ns 0.104 0 0 658 B
#7424 StartFinishSpan net6.0 726ns 3.53ns 14.1ns 0 0 0 576 B
#7424 StartFinishSpan netcoreapp3.1 958ns 4.44ns 17.8ns 0 0 0 576 B
#7424 StartFinishSpan net472 896ns 0.0361ns 0.13ns 0.0899 0 0 578 B
#7424 StartFinishScope net6.0 906ns 0.384ns 1.49ns 0 0 0 696 B
#7424 StartFinishScope netcoreapp3.1 1.13μs 5.81ns 23.3ns 0 0 0 696 B
#7424 StartFinishScope net472 1.08μs 0.151ns 0.583ns 0.103 0 0 658 B
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net6.0 1.03μs 1.28ns 4.95ns 0 0 0 696 B
master RunOnMethodBegin netcoreapp3.1 1.35μs 6.39ns 23.9ns 0 0 0 696 B
master RunOnMethodBegin net472 1.36μs 1.18ns 4.55ns 0.102 0 0 658 B
#7424 RunOnMethodBegin net6.0 1.03μs 5.36ns 25.1ns 0 0 0 696 B
#7424 RunOnMethodBegin netcoreapp3.1 1.36μs 6.7ns 26.8ns 0 0 0 696 B
#7424 RunOnMethodBegin net472 1.37μs 3.1ns 12ns 0.104 0 0 658 B

@@ -69,6 +69,11 @@ public bool IsWindows()
return string.Equals(OSPlatform, OSPlatformName.Windows, StringComparison.OrdinalIgnoreCase);
}

public bool IsLinux()
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Copy link
Member

Choose a reason for hiding this comment

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

Do we really need this? Aren't we going to go Windows then everywhere? 🤔 I don't think there's much reason to not tbh

@@ -69,6 +69,11 @@ public bool IsWindows()
return string.Equals(OSPlatform, OSPlatformName.Windows, StringComparison.OrdinalIgnoreCase);
}

public bool IsLinux()
Copy link
Member

Choose a reason for hiding this comment

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

Do we really need this? Aren't we going to go Windows then everywhere? 🤔 I don't think there's much reason to not tbh

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:tracer The core tracer library (Datadog.Trace, does not include OpenTracing, native code, or integrations)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants