dd-trace-dotnet icon indicating copy to clipboard operation
dd-trace-dotnet copied to clipboard

[Dynamic Instrumentation] Skip symbol extraction tests when PDB does not exist

Open dudikeleti opened this issue 1 year ago • 4 comments

Summary of changes

Current SymbolExtractionTests is for assembly with PDB only

dudikeleti avatar Jan 23 '24 10:01 dudikeleti

Datadog Report

Branch report: dudik/skip-symbol-tests-missin-pdb Commit report: c58c408 Test service: dd-trace-dotnet

:x: 286 Failed (0 Known Flaky), 313285 Passed, 2014 Skipped, 58m 41.82s Wall Time

:x: Failed Tests (286)

This report shows up to 5 failed tests.

  • InstallAndUninstallMethodProbeWithOverloadsTest - Datadog.Trace.Debugger.IntegrationTests.ProbesTests - Details

    Expand for error
    esults do not match.
    ifferences:
    eceived: ProbeTests.OverloadAndSimpleNameTest_#1..received.txt
    erified: ProbeTests.OverloadAndSimpleNameTest_#1..verified.txt
    eceived Content:
    
     {
       "dd.span_id": "ScrubbedValue",
       "dd.trace_id": "ScrubbedValue",
       "ddsource": "dd_debugger",
    ..
    
  • InstallAndUninstallMethodProbeWithOverloadsTest - Datadog.Trace.Debugger.IntegrationTests.ProbesTests - Details

    Expand for error
    esults do not match.
    ifferences:
    eceived: ProbeTests.OverloadAndSimpleNameTest_#1..received.txt
    erified: ProbeTests.OverloadAndSimpleNameTest_#1..verified.txt
    eceived Content:
    
     {
       "dd.span_id": "ScrubbedValue",
       "dd.trace_id": "ScrubbedValue",
       "ddsource": "dd_debugger",
    ..
    
  • InstallAndUninstallMethodProbeWithOverloadsTest - Datadog.Trace.Debugger.IntegrationTests.ProbesTests - Details

    Expand for error
    esults do not match.
    ifferences:
    eceived: ProbeTests.OverloadAndSimpleNameTest_#1..received.txt
    erified: ProbeTests.OverloadAndSimpleNameTest_#1..verified.txt
    eceived Content:
    
     {
       "dd.span_id": "ScrubbedValue",
       "dd.trace_id": "ScrubbedValue",
       "ddsource": "dd_debugger",
    ..
    
  • InstallAndUninstallMethodProbeWithOverloadsTest - Datadog.Trace.Debugger.IntegrationTests.ProbesTests - Details

    Expand for error
    esults do not match.
    ifferences:
    eceived: ProbeTests.OverloadAndSimpleNameTest_#1..received.txt
    erified: ProbeTests.OverloadAndSimpleNameTest_#1..verified.txt
    eceived Content:
    
     {
       "dd.span_id": "ScrubbedValue",
       "dd.trace_id": "ScrubbedValue",
       "ddsource": "dd_debugger",
    ..
    
  • InstallAndUninstallMethodProbeWithOverloadsTest - Datadog.Trace.Debugger.IntegrationTests.ProbesTests - Details

    Expand for error
    esults do not match.
    ifferences:
    eceived: ProbeTests.OverloadAndSimpleNameTest_#1..received.txt
    erified: ProbeTests.OverloadAndSimpleNameTest_#1..verified.txt
    eceived Content:
    
     {
       "dd.span_id": "ScrubbedValue",
       "dd.trace_id": "ScrubbedValue",
       "ddsource": "dd_debugger",
    ..
    

datadog-ddstaging[bot] avatar Jan 23 '24 10:01 datadog-ddstaging[bot]

Execution-Time Benchmarks Report :stopwatch:

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 (5100) - mean (72ms)  : 60, 84
     .   : milestone, 72,
    master - mean (73ms)  : 61, 84
     .   : milestone, 73,

    section CallTarget+Inlining+NGEN
    This PR (5100) - mean (951ms)  : 929, 973
     .   : milestone, 951,
    master - mean (959ms)  : 935, 984
     .   : milestone, 959,

gantt
    title Execution time (ms) FakeDbCommand (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (5100) - mean (107ms)  : 102, 111
     .   : milestone, 107,
    master - mean (106ms)  : 103, 110
     .   : milestone, 106,

    section CallTarget+Inlining+NGEN
    This PR (5100) - mean (692ms)  : 674, 710
     .   : milestone, 692,
    master - mean (689ms)  : 668, 711
     .   : milestone, 689,

gantt
    title Execution time (ms) FakeDbCommand (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (5100) - mean (91ms)  : 87, 96
     .   : milestone, 91,
    master - mean (90ms)  : 86, 95
     .   : milestone, 90,

    section CallTarget+Inlining+NGEN
    This PR (5100) - mean (646ms)  : 626, 666
     .   : milestone, 646,
    master - mean (657ms)  : 630, 684
     .   : milestone, 657,

gantt
    title Execution time (ms) HttpMessageHandler (.NET Framework 4.6.2) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (5100) - mean (189ms)  : 186, 192
     .   : milestone, 189,
    master - mean (188ms)  : 185, 191
     .   : milestone, 188,

    section CallTarget+Inlining+NGEN
    This PR (5100) - mean (1,058ms)  : 1038, 1078
     .   : milestone, 1058,
    master - mean (1,050ms)  : 1030, 1071
     .   : milestone, 1050,

gantt
    title Execution time (ms) HttpMessageHandler (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (5100) - mean (272ms)  : 267, 277
     .   : milestone, 272,
    master - mean (272ms)  : 267, 277
     .   : milestone, 272,

    section CallTarget+Inlining+NGEN
    This PR (5100) - mean (1,039ms)  : 1018, 1061
     .   : milestone, 1039,
    master - mean (1,037ms)  : 1010, 1065
     .   : milestone, 1037,

gantt
    title Execution time (ms) HttpMessageHandler (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Baseline
    This PR (5100) - mean (262ms)  : 257, 267
     .   : milestone, 262,
    master - mean (260ms)  : 255, 265
     .   : milestone, 260,

    section CallTarget+Inlining+NGEN
    This PR (5100) - mean (1,010ms)  : 988, 1032
     .   : milestone, 1010,
    master - mean (1,005ms)  : 979, 1032
     .   : milestone, 1005,

andrewlock avatar Jan 23 '24 10:01 andrewlock

Throughput/Crank Report:zap:

Throughput results for AspNetCoreSimpleController comparing the following branches/commits:

Cases where throughput results for the PR are worse than latest master (5% drop or greater), results are shown in red.

Note that these results are based on a single point-in-time result for each branch. For full results, see one of the many, many dashboards!

gantt
    title Throughput Linux x64 (Total requests) 
    dateFormat  X
    axisFormat %s
    section Baseline
    This PR (5100) (11.256M)   : 0, 11255565
    master (11.045M)   : 0, 11045166
    benchmarks/2.9.0 (11.021M)   : 0, 11020861

    section Automatic
    This PR (5100) (7.695M)   : 0, 7694844
    master (7.612M)   : 0, 7612198
    benchmarks/2.9.0 (8.031M)   : 0, 8030841

    section Trace stats
    This PR (5100) (8.075M)   : 0, 8074524
    master (7.923M)   : 0, 7922699

    section Manual
    This PR (5100) (9.796M)   : 0, 9796068
    master (9.633M)   : 0, 9633067

    section Manual + Automatic
    This PR (5100) (7.245M)   : 0, 7245352
    master (7.227M)   : 0, 7226532

    section Version Conflict
    This PR (5100) (6.571M)   : 0, 6570750
    master (6.546M)   : 0, 6546261

gantt
    title Throughput Linux arm64 (Total requests) 
    dateFormat  X
    axisFormat %s
    section Baseline
    This PR (5100) (9.355M)   : 0, 9355364
    master (9.493M)   : 0, 9492934
    benchmarks/2.9.0 (9.571M)   : 0, 9570999

    section Automatic
    This PR (5100) (6.614M)   : 0, 6614432
    master (6.558M)   : 0, 6557890

    section Trace stats
    This PR (5100) (6.872M)   : 0, 6872090
    master (6.898M)   : 0, 6898082

    section Manual
    This PR (5100) (8.142M)   : 0, 8141846
    master (8.234M)   : 0, 8234237

    section Manual + Automatic
    This PR (5100) (6.039M)   : 0, 6039324
    master (6.273M)   : 0, 6272784

    section Version Conflict
    This PR (5100) (5.515M)   : 0, 5515193
    master (5.625M)   : 0, 5624790

gantt
    title Throughput Windows x64 (Total requests) 
    dateFormat  X
    axisFormat %s
    section Baseline
    This PR (5100) (10.041M)   : 0, 10041104
    master (10.105M)   : 0, 10104990
    benchmarks/2.9.0 (10.312M)   : 0, 10311545

    section Automatic
    This PR (5100) (6.938M)   : 0, 6937585
    master (6.962M)   : 0, 6961875
    benchmarks/2.9.0 (7.431M)   : 0, 7430755

    section Trace stats
    This PR (5100) (7.290M)   : 0, 7289582
    master (7.331M)   : 0, 7330813

    section Manual
    This PR (5100) (8.551M)   : 0, 8550814
    master (8.663M)   : 0, 8662830

    section Manual + Automatic
    This PR (5100) (6.701M)   : 0, 6701340
    master (6.764M)   : 0, 6764197

    section Version Conflict
    This PR (5100) (6.072M)   : 0, 6072177
    master (6.002M)   : 0, 6001872

gantt
    title Throughput Linux x64 (ASM) (Total requests) 
    dateFormat  X
    axisFormat %s
    section Baseline
    master (7.358M)   : 0, 7357726
    benchmarks/2.9.0 (7.826M)   : 0, 7825728

    section No attack
    master (1.768M)   : 0, 1767522
    benchmarks/2.9.0 (3.204M)   : 0, 3203842

    section Attack
    master (1.404M)   : 0, 1404365
    benchmarks/2.9.0 (2.541M)   : 0, 2541039

    section Blocking
    master (3.151M)   : 0, 3150668

    section IAST default
    master (6.544M)   : 0, 6543916

    section IAST full
    master (5.701M)   : 0, 5701059

    section Base vuln
    master (0.952M)   : 0, 952021

    section IAST vuln
    master (0.863M)   : 0, 862892

andrewlock avatar Jan 23 '24 13:01 andrewlock

Benchmarks Report :snail:

Benchmarks for #5100 compared to master:

  • 1 benchmarks are faster, with geometric mean 1.194
  • 2 benchmarks are slower, with geometric mean 1.129
  • 2 benchmarks have fewer allocations
  • 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 :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartStopWithChild net6.0 8.66μs 48.9ns 342ns 0.0403 0.0179 0 7.49 KB
master StartStopWithChild netcoreapp3.1 10.6μs 57.4ns 314ns 0.0206 0.0103 0 7.59 KB
master StartStopWithChild net472 17.2μs 79.2ns 307ns 1.33 0.36 0.111 7.96 KB
#5100 StartStopWithChild net6.0 8.63μs 46ns 256ns 0.0174 0.00872 0 7.49 KB
#5100 StartStopWithChild netcoreapp3.1 10.7μs 54.2ns 287ns 0.0206 0.0103 0 7.59 KB
#5100 StartStopWithChild net472 17.3μs 49.1ns 190ns 1.34 0.364 0.13 7.95 KB
Benchmarks.Trace.AgentWriterBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 454μs 211ns 818ns 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 638μs 165ns 596ns 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces net472 779μs 1.18μs 4.25μs 0.386 0 0 3.3 KB
#5100 WriteAndFlushEnrichedTraces net6.0 445μs 155ns 581ns 0 0 0 2.7 KB
#5100 WriteAndFlushEnrichedTraces netcoreapp3.1 619μs 283ns 1.1μs 0 0 0 2.7 KB
#5100 WriteAndFlushEnrichedTraces net472 771μs 323ns 1.25μs 0.386 0 0 3.3 KB
Benchmarks.Trace.Asm.AppSecBodyBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net6.0 39.2μs 22.2ns 86.1ns 0.0195 0 0 2.36 KB
master AllCycleSimpleBody netcoreapp3.1 42.4μs 44.2ns 171ns 0.0214 0 0 2.34 KB
master AllCycleSimpleBody net472 44.7μs 22ns 85.1ns 0.38 0 0 2.41 KB
master AllCycleMoreComplexBody net6.0 203μs 127ns 492ns 0.102 0 0 9.84 KB
master AllCycleMoreComplexBody netcoreapp3.1 213μs 167ns 646ns 0.107 0 0 9.73 KB
master AllCycleMoreComplexBody net472 227μs 143ns 555ns 1.47 0 0 9.91 KB
master ObjectExtractorSimpleBody net6.0 140ns 0.148ns 0.575ns 0.00397 0 0 280 B
master ObjectExtractorSimpleBody netcoreapp3.1 212ns 0.195ns 0.756ns 0.00371 0 0 272 B
master ObjectExtractorSimpleBody net472 162ns 0.0868ns 0.325ns 0.0446 0 0 281 B
master ObjectExtractorMoreComplexBody net6.0 3.26μs 1.67ns 6.04ns 0.0523 0 0 3.78 KB
master ObjectExtractorMoreComplexBody netcoreapp3.1 3.93μs 2.33ns 9.04ns 0.0493 0 0 3.69 KB
master ObjectExtractorMoreComplexBody net472 3.76μs 1.84ns 6.87ns 0.602 0.00561 0 3.8 KB
#5100 AllCycleSimpleBody net6.0 38.9μs 39.2ns 152ns 0.0194 0 0 2.36 KB
#5100 AllCycleSimpleBody netcoreapp3.1 42μs 45.8ns 177ns 0.0209 0 0 2.34 KB
#5100 AllCycleSimpleBody net472 44.8μs 24.1ns 90.1ns 0.38 0 0 2.41 KB
#5100 AllCycleMoreComplexBody net6.0 201μs 124ns 480ns 0.1 0 0 9.84 KB
#5100 AllCycleMoreComplexBody netcoreapp3.1 213μs 257ns 996ns 0.106 0 0 9.73 KB
#5100 AllCycleMoreComplexBody net472 227μs 186ns 721ns 1.47 0 0 9.91 KB
#5100 ObjectExtractorSimpleBody net6.0 140ns 0.184ns 0.69ns 0.00393 0 0 280 B
#5100 ObjectExtractorSimpleBody netcoreapp3.1 200ns 0.154ns 0.577ns 0.00374 0 0 272 B
#5100 ObjectExtractorSimpleBody net472 164ns 0.246ns 0.954ns 0.0446 0 0 281 B
#5100 ObjectExtractorMoreComplexBody net6.0 2.94μs 2.12ns 8.2ns 0.0531 0 0 3.78 KB
#5100 ObjectExtractorMoreComplexBody netcoreapp3.1 3.98μs 2.36ns 9.15ns 0.0498 0 0 3.69 KB
#5100 ObjectExtractorMoreComplexBody net472 3.8μs 3.37ns 13ns 0.602 0.00568 0 3.8 KB
Benchmarks.Trace.Asm.AppSecWafBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunWaf(args=NestedMap (10)) net6.0 55.6μs 194ns 752ns 0.225 0 0 16.66 KB
master RunWaf(args=NestedMap (10)) netcoreapp3.1 74μs 205ns 792ns 0.21 0 0 16.65 KB
master RunWaf(args=NestedMap (10)) net472 98.1μs 194ns 752ns 2.64 0.098 0 16.73 KB
master RunWafTwice(args=NestedMap (10)) net6.0 56.1μs 28.9ns 108ns 0.225 0 0 17.33 KB
master RunWafTwice(args=NestedMap (10)) netcoreapp3.1 71.8μs 57.5ns 215ns 0.216 0 0 17.31 KB
master RunWafTwice(args=NestedMap (10)) net472 108μs 398ns 1.54μs 2.75 0.106 0 17.42 KB
master RunWafWithAttack(args=Neste(...)tack) [22]) net6.0 104μs 102ns 395ns 0.257 0 0 19.49 KB
master RunWafWithAttack(args=Neste(...)tack) [22]) netcoreapp3.1 123μs 631ns 3.15μs 0.246 0 0 19.44 KB
master RunWafWithAttack(args=Neste(...)tack) [22]) net472 151μs 203ns 788ns 3.13 0.149 0 19.72 KB
master RunWaf(args=NestedMap (100)) net6.0 105μs 155ns 600ns 0.473 0 0 33.35 KB
master RunWaf(args=NestedMap (100)) netcoreapp3.1 135μs 279ns 1.08μs 0.405 0 0 33.92 KB
master RunWaf(args=NestedMap (100)) net472 189μs 375ns 1.45μs 5.36 0.376 0 34.26 KB
master RunWafTwice(args=NestedMap (100)) net6.0 109μs 279ns 1.08μs 0.444 0 0 34.02 KB
master RunWafTwice(args=NestedMap (100)) netcoreapp3.1 137μs 634ns 2.46μs 0.414 0 0 34.58 KB
master RunWafTwice(args=NestedMap (100)) net472 198μs 356ns 1.23μs 5.47 0.397 0 34.95 KB
master RunWafWithAttack(args=Neste(...)tack) [23]) net6.0 162μs 91.7ns 355ns 0.462 0 0 36.18 KB
master RunWafWithAttack(args=Neste(...)tack) [23]) netcoreapp3.1 188μs 245ns 917ns 0.468 0 0 36.71 KB
master RunWafWithAttack(args=Neste(...)tack) [23]) net472 252μs 626ns 2.42μs 5.87 0.489 0 37.26 KB
master RunWaf(args=NestedMap (20)) net6.0 101μs 35.8ns 134ns 0.455 0 0 32.78 KB
master RunWaf(args=NestedMap (20)) netcoreapp3.1 139μs 741ns 3.71μs 0.419 0 0 32.89 KB
master RunWaf(args=NestedMap (20)) net472 187μs 59.4ns 230ns 5.27 0.377 0 33.23 KB
master RunWafTwice(args=NestedMap (20)) net6.0 113μs 40ns 155ns 0.476 0 0 33.45 KB
master RunWafTwice(args=NestedMap (20)) netcoreapp3.1 135μs 58.8ns 204ns 0.428 0 0 33.55 KB
master RunWafTwice(args=NestedMap (20)) net472 198μs 135ns 522ns 5.35 0.396 0 33.92 KB
master RunWafWithAttack(args=Neste(...)tack) [22]) net6.0 154μs 66.6ns 258ns 0.461 0 0 35.61 KB
master RunWafWithAttack(args=Neste(...)tack) [22]) netcoreapp3.1 193μs 1.1μs 8.07μs 0.484 0 0 35.68 KB
master RunWafWithAttack(args=Neste(...)tack) [22]) net472 258μs 139ns 537ns 5.68 0.494 0 36.22 KB
#5100 RunWaf(args=NestedMap (10)) net6.0 57.7μs 331ns 2.65μs 0.224 0 0 16.66 KB
#5100 RunWaf(args=NestedMap (10)) netcoreapp3.1 68.5μs 346ns 1.55μs 0.205 0 0 16.65 KB
#5100 RunWaf(args=NestedMap (10)) net472 96.6μs 59.3ns 214ns 2.61 0.0967 0 16.73 KB
#5100 RunWafTwice(args=NestedMap (10)) net6.0 59.5μs 35.1ns 136ns 0.241 0 0 17.33 KB
#5100 RunWafTwice(args=NestedMap (10)) netcoreapp3.1 74.4μs 366ns 1.55μs 0.22 0 0 17.31 KB
#5100 RunWafTwice(args=NestedMap (10)) net472 108μs 534ns 2.2μs 2.72 0.105 0 17.42 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [22]) net6.0 113μs 27.6ns 103ns 0.268 0 0 19.49 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [22]) netcoreapp3.1 120μs 515ns 2μs 0.235 0 0 19.44 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [22]) net472 154μs 563ns 2.18μs 3.08 0.15 0 19.72 KB
#5100 RunWaf(args=NestedMap (100)) net6.0 100μs 75.9ns 294ns 0.452 0 0 33.35 KB
#5100 RunWaf(args=NestedMap (100)) netcoreapp3.1 136μs 668ns 2.67μs 0.463 0 0 33.92 KB
#5100 RunWaf(args=NestedMap (100)) net472 195μs 270ns 1.05μs 5.43 0.375 0 34.27 KB
#5100 RunWafTwice(args=NestedMap (100)) net6.0 110μs 46.1ns 178ns 0.466 0 0 34.02 KB
#5100 RunWafTwice(args=NestedMap (100)) netcoreapp3.1 139μs 653ns 2.61μs 0.408 0 0 34.58 KB
#5100 RunWafTwice(args=NestedMap (100)) net472 200μs 125ns 466ns 5.47 0.398 0 34.96 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [23]) net6.0 155μs 69.3ns 268ns 0.466 0 0 36.19 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [23]) netcoreapp3.1 194μs 857ns 3.32μs 0.46 0 0 36.71 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [23]) net472 244μs 174ns 676ns 5.85 0.487 0 37.26 KB
#5100 RunWaf(args=NestedMap (20)) net6.0 108μs 343ns 1.33μs 0.465 0 0 32.78 KB
#5100 RunWaf(args=NestedMap (20)) netcoreapp3.1 136μs 719ns 3.45μs 0.411 0 0 32.89 KB
#5100 RunWaf(args=NestedMap (20)) net472 187μs 68.3ns 256ns 5.26 0.375 0 33.23 KB
#5100 RunWafTwice(args=NestedMap (20)) net6.0 109μs 588ns 3.48μs 0.463 0 0 33.45 KB
#5100 RunWafTwice(args=NestedMap (20)) netcoreapp3.1 138μs 621ns 2.41μs 0.41 0 0 33.55 KB
#5100 RunWafTwice(args=NestedMap (20)) net472 196μs 99.8ns 387ns 5.31 0.393 0 33.92 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [22]) net6.0 163μs 802ns 3.21μs 0.488 0 0 35.61 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [22]) netcoreapp3.1 192μs 214ns 772ns 0.477 0 0 35.68 KB
#5100 RunWafWithAttack(args=Neste(...)tack) [22]) net472 247μs 728ns 2.82μs 5.64 0.368 0 36.22 KB
Benchmarks.Trace.AspNetCoreBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net6.0 172μs 117ns 437ns 0.259 0 0 18.26 KB
master SendRequest netcoreapp3.1 194μs 382ns 1.48μs 0.193 0 0 20.42 KB
master SendRequest net472 0.000324ns 0.000225ns 0.000873ns 0 0 0 0 b
#5100 SendRequest net6.0 170μs 132ns 510ns 0.256 0 0 18.26 KB
#5100 SendRequest netcoreapp3.1 191μs 319ns 1.24μs 0.188 0 0 20.42 KB
#5100 SendRequest net472 0.000559ns 0.000313ns 0.00113ns 0 0 0 0 b
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 563μs 1.86μs 7.19μs 0.548 0 0 41.76 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 656μs 2.73μs 10.6μs 0.324 0 0 41.77 KB
master WriteAndFlushEnrichedTraces net472 846μs 2.57μs 9.96μs 8.08 2.55 0.425 53.23 KB
#5100 WriteAndFlushEnrichedTraces net6.0 536μs 813ns 3.15μs 0.556 0 0 41.58 KB
#5100 WriteAndFlushEnrichedTraces netcoreapp3.1 654μs 1.25μs 4.83μs 0.326 0 0 41.63 KB
#5100 WriteAndFlushEnrichedTraces net472 856μs 2.31μs 8.02μs 8.28 2.48 0.414 53.23 KB
Benchmarks.Trace.DbCommandBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteNonQuery net6.0 1.18μs 0.407ns 1.58ns 0.0106 0 0 776 B
master ExecuteNonQuery netcoreapp3.1 1.48μs 1.07ns 4.15ns 0.0104 0 0 776 B
master ExecuteNonQuery net472 1.7μs 1.57ns 6.07ns 0.117 0 0 738 B
#5100 ExecuteNonQuery net6.0 1.12μs 0.753ns 2.92ns 0.0105 0 0 776 B
#5100 ExecuteNonQuery netcoreapp3.1 1.53μs 1.2ns 4.65ns 0.0108 0 0 776 B
#5100 ExecuteNonQuery net472 1.77μs 1.07ns 4.13ns 0.117 0 0 738 B
Benchmarks.Trace.ElasticsearchBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master CallElasticsearch net6.0 1.17μs 0.659ns 2.47ns 0.0134 0 0 944 B
master CallElasticsearch netcoreapp3.1 1.53μs 2.62ns 10.1ns 0.0131 0 0 944 B
master CallElasticsearch net472 2.46μs 0.605ns 2.34ns 0.152 0 0 963 B
master CallElasticsearchAsync net6.0 1.28μs 0.587ns 2.2ns 0.0125 0 0 920 B
master CallElasticsearchAsync netcoreapp3.1 1.58μs 0.725ns 2.71ns 0.0134 0 0 992 B
master CallElasticsearchAsync net472 2.61μs 0.911ns 3.53ns 0.161 0 0 1.02 KB
#5100 CallElasticsearch net6.0 1.23μs 0.699ns 2.61ns 0.013 0 0 944 B
#5100 CallElasticsearch netcoreapp3.1 1.56μs 0.545ns 2.04ns 0.0126 0 0 944 B
#5100 CallElasticsearch net472 2.57μs 0.663ns 2.39ns 0.153 0 0 963 B
#5100 CallElasticsearchAsync net6.0 1.31μs 0.733ns 2.84ns 0.0125 0 0 920 B
#5100 CallElasticsearchAsync netcoreapp3.1 1.62μs 0.802ns 3.11ns 0.0129 0 0 992 B
#5100 CallElasticsearchAsync net472 2.53μs 0.75ns 2.81ns 0.162 0 0 1.02 KB
Benchmarks.Trace.GraphQLBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteAsync net6.0 1.3μs 0.667ns 2.49ns 0.0131 0 0 920 B
master ExecuteAsync netcoreapp3.1 1.66μs 1.11ns 4.16ns 0.0125 0 0 920 B
master ExecuteAsync net472 1.83μs 1.31ns 5.08ns 0.14 0 0 883 B
#5100 ExecuteAsync net6.0 1.3μs 0.694ns 2.69ns 0.013 0 0 920 B
#5100 ExecuteAsync netcoreapp3.1 1.67μs 1.49ns 5.59ns 0.0118 0 0 920 B
#5100 ExecuteAsync net472 1.83μs 0.544ns 2.11ns 0.14 0 0 883 B
Benchmarks.Trace.HttpClientBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendAsync net6.0 4.17μs 1.86ns 6.97ns 0.0293 0 0 2.1 KB
master SendAsync netcoreapp3.1 4.94μs 1.18ns 4.42ns 0.0347 0 0 2.64 KB
master SendAsync net472 7.73μs 3.17ns 11.4ns 0.526 0 0 3.31 KB
#5100 SendAsync net6.0 4.17μs 2.43ns 9.1ns 0.0293 0 0 2.1 KB
#5100 SendAsync netcoreapp3.1 5.08μs 1.36ns 4.9ns 0.0355 0 0 2.64 KB
#5100 SendAsync net472 7.75μs 3.95ns 15.3ns 0.524 0.00388 0 3.31 KB
Benchmarks.Trace.Iast.StringAspectsBenchmark - Faster :tada: More allocations :warning:

Faster :tada: in #5100

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net6.0 1.194 62,100.00 52,000.00 multimodal

More allocations :warning: in #5100

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net472 221.18 KB 229.38 KB 8.19 KB 3.70%

Fewer allocations :tada: in #5100

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net6.0 213.72 KB 204.91 KB -8.81 KB -4.12%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net472 62.06 KB 59.26 KB -2.8 KB -4.51%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StringConcatBenchmark net6.0 63μs 1.1μs 10.9μs 0 0 0 43.44 KB
master StringConcatBenchmark netcoreapp3.1 53.6μs 267ns 1.17μs 0 0 0 42.64 KB
master StringConcatBenchmark net472 38μs 123ns 460ns 0 0 0 62.06 KB
master StringConcatAspectBenchmark net6.0 275μs 5μs 48.7μs 0 0 0 213.72 KB
master StringConcatAspectBenchmark netcoreapp3.1 264μs 3.46μs 33.7μs 0 0 0 202.58 KB
master StringConcatAspectBenchmark net472 247μs 4.1μs 38.9μs 0 0 0 221.18 KB
#5100 StringConcatBenchmark net6.0 52μs 251ns 1.04μs 0 0 0 43.44 KB
#5100 StringConcatBenchmark netcoreapp3.1 53.1μs 103ns 370ns 0 0 0 42.64 KB
#5100 StringConcatBenchmark net472 38.3μs 135ns 506ns 0 0 0 59.26 KB
#5100 StringConcatAspectBenchmark net6.0 271μs 1.37μs 8.08μs 0 0 0 204.91 KB
#5100 StringConcatAspectBenchmark netcoreapp3.1 282μs 1.09μs 5.86μs 0 0 0 202.52 KB
#5100 StringConcatAspectBenchmark net472 229μs 1.21μs 6.04μs 0 0 0 229.38 KB
Benchmarks.Trace.ILoggerBenchmark - Slower :warning: Same allocations :heavy_check_mark:

Slower :warning: in #5100

Benchmark diff/base Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.ILoggerBenchmark.EnrichedLog‑net6.0 1.139 1,405.73 1,601.56

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 1.41μs 0.751ns 2.91ns 0.0225 0 0 1.58 KB
master EnrichedLog netcoreapp3.1 2.12μs 0.937ns 3.5ns 0.0213 0 0 1.58 KB
master EnrichedLog net472 2.74μs 4.24ns 15.9ns 0.239 0 0 1.51 KB
#5100 EnrichedLog net6.0 1.6μs 1.31ns 4.89ns 0.0224 0 0 1.58 KB
#5100 EnrichedLog netcoreapp3.1 2.31μs 2.09ns 8.1ns 0.0218 0 0 1.58 KB
#5100 EnrichedLog net472 2.66μs 2.58ns 9.99ns 0.238 0 0 1.51 KB
Benchmarks.Trace.Log4netBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 113μs 65.4ns 253ns 0 0 0 4.22 KB
master EnrichedLog netcoreapp3.1 118μs 82.3ns 319ns 0 0 0 4.22 KB
master EnrichedLog net472 148μs 110ns 412ns 0.67 0.223 0 4.4 KB
#5100 EnrichedLog net6.0 112μs 46.5ns 168ns 0.0563 0 0 4.22 KB
#5100 EnrichedLog netcoreapp3.1 117μs 119ns 446ns 0.0583 0 0 4.22 KB
#5100 EnrichedLog net472 149μs 189ns 706ns 0.664 0.221 0 4.4 KB
Benchmarks.Trace.NLogBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 2.98μs 0.619ns 2.31ns 0.0299 0 0 2.14 KB
master EnrichedLog netcoreapp3.1 4.28μs 1.49ns 5.58ns 0.0279 0 0 2.14 KB
master EnrichedLog net472 4.9μs 2.26ns 8.75ns 0.31 0 0 1.95 KB
#5100 EnrichedLog net6.0 2.99μs 1.4ns 5.24ns 0.0299 0 0 2.14 KB
#5100 EnrichedLog netcoreapp3.1 4.27μs 1.48ns 5.74ns 0.0277 0 0 2.14 KB
#5100 EnrichedLog net472 4.8μs 1.19ns 4.63ns 0.31 0 0 1.95 KB
Benchmarks.Trace.RedisBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendReceive net6.0 1.36μs 0.793ns 2.97ns 0.0156 0 0 1.11 KB
master SendReceive netcoreapp3.1 1.78μs 2.62ns 9.81ns 0.015 0 0 1.11 KB
master SendReceive net472 2.15μs 1.04ns 3.73ns 0.178 0 0 1.12 KB
#5100 SendReceive net6.0 1.34μs 0.834ns 3.12ns 0.0154 0 0 1.11 KB
#5100 SendReceive netcoreapp3.1 1.8μs 1.19ns 4.61ns 0.0152 0 0 1.11 KB
#5100 SendReceive net472 2.14μs 1.8ns 6.97ns 0.179 0 0 1.12 KB
Benchmarks.Trace.SerilogBenchmark - Slower :warning: Same allocations :heavy_check_mark:

Slower :warning: in #5100

Benchmark diff/base Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.SerilogBenchmark.EnrichedLog‑net6.0 1.118 2,604.35 2,911.50

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 2.6μs 1.41ns 5.48ns 0.0207 0 0 1.54 KB
master EnrichedLog netcoreapp3.1 3.86μs 2.05ns 7.96ns 0.0212 0 0 1.58 KB
master EnrichedLog net472 4.38μs 1.5ns 5.82ns 0.313 0 0 1.97 KB
#5100 EnrichedLog net6.0 2.91μs 0.646ns 2.5ns 0.0218 0 0 1.54 KB
#5100 EnrichedLog netcoreapp3.1 3.92μs 2.07ns 8.02ns 0.0214 0 0 1.58 KB
#5100 EnrichedLog net472 4.37μs 1.52ns 5.91ns 0.314 0 0 1.97 KB
Benchmarks.Trace.SpanBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net6.0 496ns 0.0832ns 0.311ns 0.00754 0 0 544 B
master StartFinishSpan netcoreapp3.1 735ns 0.453ns 1.75ns 0.00738 0 0 544 B
master StartFinishSpan net472 778ns 0.363ns 1.41ns 0.0867 0 0 546 B
master StartFinishScope net6.0 631ns 0.161ns 0.624ns 0.00922 0 0 664 B
master StartFinishScope netcoreapp3.1 882ns 0.545ns 2.04ns 0.00879 0 0 664 B
master StartFinishScope net472 933ns 0.586ns 2.27ns 0.0993 0 0 626 B
#5100 StartFinishSpan net6.0 514ns 0.0972ns 0.377ns 0.00749 0 0 544 B
#5100 StartFinishSpan netcoreapp3.1 775ns 0.33ns 1.28ns 0.00729 0 0 544 B
#5100 StartFinishSpan net472 803ns 0.755ns 2.93ns 0.0867 0 0 546 B
#5100 StartFinishScope net6.0 692ns 0.407ns 1.58ns 0.00923 0 0 664 B
#5100 StartFinishScope netcoreapp3.1 870ns 4.2ns 16.3ns 0.00882 0 0 664 B
#5100 StartFinishScope net472 1.03μs 0.353ns 1.37ns 0.0993 0 0 626 B
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net6.0 661ns 0.403ns 1.56ns 0.00937 0 0 664 B
master RunOnMethodBegin netcoreapp3.1 975ns 2.09ns 8.1ns 0.00896 0 0 664 B
master RunOnMethodBegin net472 1.1μs 2.13ns 8.25ns 0.0991 0 0 626 B
#5100 RunOnMethodBegin net6.0 725ns 0.308ns 1.19ns 0.00926 0 0 664 B
#5100 RunOnMethodBegin netcoreapp3.1 896ns 0.485ns 1.75ns 0.00918 0 0 664 B
#5100 RunOnMethodBegin net472 1.12μs 0.237ns 0.917ns 0.0989 0 0 626 B

andrewlock avatar Jan 24 '24 19:01 andrewlock