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

[Profiler/Crashtracker] Bump libdatadog 16.0.2 #6589

Draft
wants to merge 19 commits into
base: master
Choose a base branch
from

Conversation

gleocadie
Copy link
Collaborator

Summary of changes

Reason for change

Implementation details

Test coverage

Other details

@github-actions github-actions bot added the area:profiler Issues related to the continous-profiler label Jan 23, 2025
@datadog-ddstaging
Copy link

datadog-ddstaging bot commented Jan 23, 2025

Datadog Report

Branch report: gleocadie/bump-libdatadog-15
Commit report: a4db16e
Test service: dd-trace-dotnet

✅ 0 Failed, 253072 Passed, 2963 Skipped, 20h 6m 6.22s Total Time

@gleocadie gleocadie force-pushed the gleocadie/bump-libdatadog-15 branch from e8ff9f1 to 3ed3ff9 Compare January 23, 2025 17:57
@andrewlock
Copy link
Member

andrewlock commented Jan 23, 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.6.2) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (6589) - mean (69ms)  : 66, 72
     .   : milestone, 69,
    master - mean (69ms)  : 66, 72
     .   : milestone, 69,

    section CallTarget+Inlining+NGEN
    This PR (6589) - mean (992ms)  : 969, 1014
     .   : milestone, 992,
    master - mean (990ms)  : 966, 1013
     .   : milestone, 990,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (6589) - mean (103ms)  : 101, 105
     .   : milestone, 103,
    master - mean (103ms)  : 100, 105
     .   : milestone, 103,

    section CallTarget+Inlining+NGEN
    This PR (6589) - mean (671ms)  : 653, 690
     .   : milestone, 671,
    master - mean (674ms)  : 658, 689
     .   : milestone, 674,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (6589) - mean (90ms)  : 88, 92
     .   : milestone, 90,
    master - mean (89ms)  : 88, 91
     .   : milestone, 89,

    section CallTarget+Inlining+NGEN
    This PR (6589) - mean (626ms)  : 610, 643
     .   : milestone, 626,
    master - mean (636ms)  : 614, 659
     .   : milestone, 636,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Framework 4.6.2) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (6589) - mean (191ms)  : 186, 196
     .   : milestone, 191,
    master - mean (191ms)  : 187, 194
     .   : milestone, 191,

    section CallTarget+Inlining+NGEN
    This PR (6589) - mean (1,101ms)  : 1069, 1132
     .   : milestone, 1101,
    master - mean (1,105ms)  : 1074, 1136
     .   : milestone, 1105,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (6589) - mean (271ms)  : 266, 277
     .   : milestone, 271,
    master - mean (269ms)  : 266, 273
     .   : milestone, 269,

    section CallTarget+Inlining+NGEN
    This PR (6589) - mean (865ms)  : 832, 898
     .   : milestone, 865,
    master - mean (865ms)  : 833, 896
     .   : milestone, 865,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (6589) - mean (263ms)  : 260, 266
     .   : milestone, 263,
    master - mean (261ms)  : 257, 265
     .   : milestone, 261,

    section CallTarget+Inlining+NGEN
    This PR (6589) - mean (841ms)  : 809, 873
     .   : milestone, 841,
    master - mean (853ms)  : 823, 884
     .   : milestone, 853,

Loading

@gleocadie gleocadie force-pushed the gleocadie/bump-libdatadog-15 branch from ca59430 to 86d92df Compare January 23, 2025 19:54
@andrewlock
Copy link
Member

andrewlock commented Jan 23, 2025

Benchmarks Report for tracer 🐌

Benchmarks for #6589 compared to master:

  • 2 benchmarks are faster, with geometric mean 1.120
  • 1 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 ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartStopWithChild net6.0 7.92μs 42.6ns 344ns 0.0115 0.00384 0 5.61 KB
master StartStopWithChild netcoreapp3.1 10.1μs 57ns 407ns 0.0201 0.0101 0 5.8 KB
master StartStopWithChild net472 15.9μs 44.2ns 171ns 1.06 0.341 0.103 6.21 KB
#6589 StartStopWithChild net6.0 7.96μs 43.6ns 341ns 0.016 0.00798 0 5.61 KB
#6589 StartStopWithChild netcoreapp3.1 9.97μs 54.7ns 309ns 0.0147 0.00491 0 5.81 KB
#6589 StartStopWithChild net472 16.1μs 47.5ns 184ns 1.06 0.328 0.096 6.21 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 498μs 116ns 419ns 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 638μs 422ns 1.58μs 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces net472 842μs 833ns 3.12μs 0.419 0 0 3.3 KB
#6589 WriteAndFlushEnrichedTraces net6.0 491μs 214ns 829ns 0 0 0 2.7 KB
#6589 WriteAndFlushEnrichedTraces netcoreapp3.1 651μs 523ns 1.96μs 0 0 0 2.7 KB
#6589 WriteAndFlushEnrichedTraces net472 843μs 560ns 2.1μs 0.422 0 0 3.3 KB
Benchmarks.Trace.AspNetCoreBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net6.0 127μs 380ns 1.42μs 0.189 0 0 14.47 KB
master SendRequest netcoreapp3.1 142μs 460ns 1.78μs 0.208 0 0 17.27 KB
master SendRequest net472 0.00282ns 0.00118ns 0.00456ns 0 0 0 0 b
#6589 SendRequest net6.0 126μs 468ns 1.81μs 0.192 0 0 14.47 KB
#6589 SendRequest netcoreapp3.1 147μs 459ns 1.78μs 0.214 0 0 17.27 KB
#6589 SendRequest net472 0.000628ns 0.000281ns 0.00109ns 0 0 0 0 b
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #6589

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑net6.0 41.42 KB 41.77 KB 343 B 0.83%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 574μs 3.28μs 25.2μs 0.551 0 0 41.42 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 680μs 3.9μs 30.5μs 0.314 0 0 41.71 KB
master WriteAndFlushEnrichedTraces net472 831μs 3.38μs 13.1μs 8.39 2.52 0.419 53.26 KB
#6589 WriteAndFlushEnrichedTraces net6.0 593μs 3.13μs 16.8μs 0.561 0 0 41.77 KB
#6589 WriteAndFlushEnrichedTraces netcoreapp3.1 652μs 3.24μs 13.8μs 0.326 0 0 41.79 KB
#6589 WriteAndFlushEnrichedTraces net472 874μs 2.88μs 10.4μs 8.36 2.64 0.44 53.37 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.26μs 0.905ns 3.39ns 0.0144 0 0 1.02 KB
master ExecuteNonQuery netcoreapp3.1 1.81μs 1.63ns 6.1ns 0.0135 0 0 1.02 KB
master ExecuteNonQuery net472 2.14μs 1.87ns 7.25ns 0.157 0.00107 0 987 B
#6589 ExecuteNonQuery net6.0 1.27μs 1.47ns 5.69ns 0.014 0 0 1.02 KB
#6589 ExecuteNonQuery netcoreapp3.1 1.75μs 0.875ns 3.27ns 0.013 0 0 1.02 KB
#6589 ExecuteNonQuery net472 2.12μs 1.65ns 6.38ns 0.156 0.00106 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.26μs 0.574ns 2.22ns 0.0137 0 0 976 B
master CallElasticsearch netcoreapp3.1 1.52μs 0.577ns 2.16ns 0.013 0 0 976 B
master CallElasticsearch net472 2.52μs 3.19ns 11.9ns 0.158 0 0 995 B
master CallElasticsearchAsync net6.0 1.32μs 0.597ns 2.31ns 0.0132 0 0 952 B
master CallElasticsearchAsync netcoreapp3.1 1.72μs 0.832ns 3.11ns 0.0137 0 0 1.02 KB
master CallElasticsearchAsync net472 2.69μs 1.17ns 4.2ns 0.167 0 0 1.05 KB
#6589 CallElasticsearch net6.0 1.25μs 0.689ns 2.58ns 0.0133 0 0 976 B
#6589 CallElasticsearch netcoreapp3.1 1.56μs 1.39ns 5.2ns 0.0133 0 0 976 B
#6589 CallElasticsearch net472 2.56μs 1.56ns 6.04ns 0.157 0 0 995 B
#6589 CallElasticsearchAsync net6.0 1.27μs 0.327ns 1.18ns 0.0133 0 0 952 B
#6589 CallElasticsearchAsync netcoreapp3.1 1.66μs 0.771ns 2.98ns 0.0139 0 0 1.02 KB
#6589 CallElasticsearchAsync net472 2.68μs 0.735ns 2.75ns 0.167 0 0 1.05 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.22μs 0.572ns 2.14ns 0.0135 0 0 952 B
master ExecuteAsync netcoreapp3.1 1.61μs 0.889ns 3.33ns 0.0122 0 0 952 B
master ExecuteAsync net472 1.82μs 0.307ns 1.19ns 0.145 0 0 915 B
#6589 ExecuteAsync net6.0 1.22μs 0.588ns 2.28ns 0.0134 0 0 952 B
#6589 ExecuteAsync netcoreapp3.1 1.65μs 0.826ns 3.2ns 0.0125 0 0 952 B
#6589 ExecuteAsync net472 1.87μs 1.26ns 4.89ns 0.145 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 4.49μs 1.74ns 6.52ns 0.0315 0 0 2.31 KB
master SendAsync netcoreapp3.1 5.2μs 1.7ns 6.59ns 0.0397 0 0 2.85 KB
master SendAsync net472 7.44μs 1.6ns 6.21ns 0.495 0 0 3.12 KB
#6589 SendAsync net6.0 4.31μs 1.48ns 5.74ns 0.0323 0 0 2.31 KB
#6589 SendAsync netcoreapp3.1 5.39μs 2.27ns 8.48ns 0.038 0 0 2.85 KB
#6589 SendAsync net472 7.44μs 2.25ns 8.71ns 0.496 0 0 3.12 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 1.48μs 0.836ns 3.13ns 0.0234 0 0 1.64 KB
master EnrichedLog netcoreapp3.1 2.24μs 1.1ns 4.1ns 0.0212 0 0 1.64 KB
master EnrichedLog net472 2.61μs 0.618ns 2.31ns 0.249 0 0 1.57 KB
#6589 EnrichedLog net6.0 1.64μs 0.496ns 1.86ns 0.0231 0 0 1.64 KB
#6589 EnrichedLog netcoreapp3.1 2.14μs 0.459ns 1.66ns 0.0215 0 0 1.64 KB
#6589 EnrichedLog net472 2.57μs 0.79ns 3.06ns 0.249 0 0 1.57 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 113μs 245ns 950ns 0.056 0 0 4.28 KB
master EnrichedLog netcoreapp3.1 117μs 122ns 473ns 0.0585 0 0 4.28 KB
master EnrichedLog net472 150μs 80.2ns 311ns 0.679 0.226 0 4.46 KB
#6589 EnrichedLog net6.0 111μs 60.7ns 227ns 0.0554 0 0 4.28 KB
#6589 EnrichedLog netcoreapp3.1 117μs 112ns 418ns 0.0586 0 0 4.28 KB
#6589 EnrichedLog net472 150μs 92.9ns 348ns 0.673 0.224 0 4.46 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 3μs 12.6ns 48.7ns 0.0307 0 0 2.2 KB
master EnrichedLog netcoreapp3.1 4.24μs 3.08ns 11.5ns 0.0297 0 0 2.2 KB
master EnrichedLog net472 4.89μs 1.33ns 5.16ns 0.319 0 0 2.02 KB
#6589 EnrichedLog net6.0 2.97μs 0.414ns 1.6ns 0.0311 0 0 2.2 KB
#6589 EnrichedLog netcoreapp3.1 4.09μs 2ns 7.5ns 0.0287 0 0 2.2 KB
#6589 EnrichedLog net472 5.01μs 1.08ns 4.19ns 0.319 0 0 2.02 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.33μs 1.2ns 4.63ns 0.0159 0 0 1.14 KB
master SendReceive netcoreapp3.1 1.81μs 2.11ns 8.18ns 0.0155 0 0 1.14 KB
master SendReceive net472 2.05μs 2.6ns 10.1ns 0.184 0 0 1.16 KB
#6589 SendReceive net6.0 1.46μs 0.466ns 1.74ns 0.0161 0 0 1.14 KB
#6589 SendReceive netcoreapp3.1 1.77μs 2.23ns 8.33ns 0.0151 0 0 1.14 KB
#6589 SendReceive net472 2.03μs 1.05ns 4.08ns 0.183 0 0 1.16 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 2.78μs 1.22ns 4.74ns 0.0223 0 0 1.6 KB
master EnrichedLog netcoreapp3.1 3.91μs 3.06ns 11.9ns 0.0215 0 0 1.65 KB
master EnrichedLog net472 4.37μs 1.56ns 5.85ns 0.322 0 0 2.04 KB
#6589 EnrichedLog net6.0 2.71μs 0.642ns 2.49ns 0.0218 0 0 1.6 KB
#6589 EnrichedLog netcoreapp3.1 3.95μs 1.1ns 4.24ns 0.0215 0 0 1.65 KB
#6589 EnrichedLog net472 4.38μs 2.15ns 8.06ns 0.323 0 0 2.04 KB
Benchmarks.Trace.SpanBenchmark - Faster 🎉 Same allocations ✔️

Faster 🎉 in #6589

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.SpanBenchmark.StartFinishSpan‑netcoreapp3.1 1.116 624.43 559.32

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net6.0 407ns 0.526ns 2.04ns 0.00812 0 0 576 B
master StartFinishSpan netcoreapp3.1 624ns 0.872ns 3.38ns 0.00772 0 0 576 B
master StartFinishSpan net472 629ns 1.15ns 4.45ns 0.0917 0 0 578 B
master StartFinishScope net6.0 466ns 0.701ns 2.72ns 0.00997 0 0 696 B
master StartFinishScope netcoreapp3.1 701ns 1.09ns 4.23ns 0.00937 0 0 696 B
master StartFinishScope net472 790ns 1.2ns 4.63ns 0.104 0 0 658 B
#6589 StartFinishSpan net6.0 392ns 0.441ns 1.71ns 0.00806 0 0 576 B
#6589 StartFinishSpan netcoreapp3.1 559ns 0.87ns 3.37ns 0.00802 0 0 576 B
#6589 StartFinishSpan net472 686ns 1.18ns 4.55ns 0.0918 0 0 578 B
#6589 StartFinishScope net6.0 478ns 0.495ns 1.85ns 0.00972 0 0 696 B
#6589 StartFinishScope netcoreapp3.1 693ns 1.49ns 5.75ns 0.00933 0 0 696 B
#6589 StartFinishScope net472 846ns 1.39ns 5.39ns 0.104 0 0 658 B
Benchmarks.Trace.TraceAnnotationsBenchmark - Faster 🎉 Same allocations ✔️

Faster 🎉 in #6589

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.TraceAnnotationsBenchmark.RunOnMethodBegin‑netcoreapp3.1 1.123 975.42 868.40

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net6.0 595ns 0.952ns 3.69ns 0.00984 0 0 696 B
master RunOnMethodBegin netcoreapp3.1 975ns 1.2ns 4.63ns 0.00971 0 0 696 B
master RunOnMethodBegin net472 1.06μs 1.23ns 4.78ns 0.104 0 0 658 B
#6589 RunOnMethodBegin net6.0 615ns 1.11ns 4.31ns 0.00975 0 0 696 B
#6589 RunOnMethodBegin netcoreapp3.1 868ns 0.893ns 3.46ns 0.00923 0 0 696 B
#6589 RunOnMethodBegin net472 1.06μs 2.1ns 8.12ns 0.104 0 0 658 B

@gleocadie gleocadie force-pushed the gleocadie/bump-libdatadog-15 branch 4 times, most recently from 9822db6 to 08b889b Compare January 27, 2025 12:08
@gleocadie gleocadie force-pushed the gleocadie/bump-libdatadog-15 branch 3 times, most recently from 0bf6824 to c51cf91 Compare February 10, 2025 08:43
@gleocadie gleocadie changed the title [Profiler/Crashtracker] Bump libdatadog 15 [Profiler/Crashtracker] Bump libdatadog 16.0.1 Feb 10, 2025
@gleocadie gleocadie force-pushed the gleocadie/bump-libdatadog-15 branch from c51cf91 to 8828e5f Compare February 11, 2025 10:21
@gleocadie gleocadie force-pushed the gleocadie/bump-libdatadog-15 branch from 674746c to 97591c5 Compare February 11, 2025 13:37
@gleocadie gleocadie changed the title [Profiler/Crashtracker] Bump libdatadog 16.0.1 [Profiler/Crashtracker] Bump libdatadog 16.0.2 Feb 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:profiler Issues related to the continous-profiler
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants