Skip to content

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 Aug 1, 2025
@pr-commenter
Copy link

pr-commenter bot commented Aug 1, 2025

Benchmarks

Benchmarks Report for benchmark platform 🐌

Benchmarks for #7325 compared to master:

  • 3 benchmarks are faster, with geometric mean 1.756
  • 8 benchmarks have fewer allocations
  • 4 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 ✔️ Fewer allocations 🎉

Fewer allocations 🎉 in #7325

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑net472 6.1 KB 6.06 KB -36 B -0.59%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartStopWithChild net6.0 10.5μs 58.3ns 350ns 0 0 0 5.5 KB
master StartStopWithChild netcoreapp3.1 13.5μs 40.5ns 157ns 0 0 0 5.67 KB
master StartStopWithChild net472 21.5μs 114ns 627ns 1.08 0.323 0.108 6.1 KB
#7325 StartStopWithChild net6.0 10.4μs 56.9ns 346ns 0 0 0 5.5 KB
#7325 StartStopWithChild netcoreapp3.1 14μs 64.5ns 250ns 0 0 0 5.68 KB
#7325 StartStopWithChild net472 22.2μs 124ns 811ns 1.02 0.342 0.114 6.06 KB
Benchmarks.Trace.AgentWriterBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7325

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.AgentWriterBenchmark.WriteAndFlushEnrichedTraces‑net472 3.31 KB 3.35 KB 46 B 1.39%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 939μs 65.9ns 246ns 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 1.03ms 1.32μs 5.13μs 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces net472 1.19ms 89.8ns 324ns 0 0 0 3.31 KB
#7325 WriteAndFlushEnrichedTraces net6.0 926μs 212ns 821ns 0 0 0 2.71 KB
#7325 WriteAndFlushEnrichedTraces netcoreapp3.1 1.03ms 79.8ns 299ns 0 0 0 2.7 KB
#7325 WriteAndFlushEnrichedTraces net472 1.19ms 279ns 1.08μs 0 0 0 3.35 KB
Benchmarks.Trace.Asm.AppSecBodyBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net6.0 334μs 1.5μs 5.61μs 0 0 0 198.49 KB
master AllCycleSimpleBody netcoreapp3.1 517μs 1.72μs 6.66μs 0 0 0 206.2 KB
master AllCycleSimpleBody net472 451μs 116ns 451ns 37.9 2.23 0 246.48 KB
master AllCycleMoreComplexBody net6.0 342μs 113ns 437ns 0 0 0 201.99 KB
master AllCycleMoreComplexBody netcoreapp3.1 508μs 1.1μs 4.25μs 0 0 0 209.62 KB
master AllCycleMoreComplexBody net472 458μs 113ns 423ns 37.9 2.23 0 249.99 KB
master ObjectExtractorSimpleBody net6.0 310ns 1.77ns 12ns 0 0 0 280 B
master ObjectExtractorSimpleBody netcoreapp3.1 404ns 2.11ns 10.1ns 0 0 0 272 B
master ObjectExtractorSimpleBody net472 302ns 0.645ns 2.5ns 0.0432 0 0 281 B
master ObjectExtractorMoreComplexBody net6.0 6.32μs 14.6ns 56.4ns 0 0 0 3.78 KB
master ObjectExtractorMoreComplexBody netcoreapp3.1 8.01μs 32.2ns 129ns 0 0 0 3.69 KB
master ObjectExtractorMoreComplexBody net472 6.7μs 4.48ns 17.3ns 0.571 0 0 3.8 KB
#7325 AllCycleSimpleBody net6.0 336μs 438ns 1.7μs 0 0 0 198.49 KB
#7325 AllCycleSimpleBody netcoreapp3.1 516μs 2.43μs 9.4μs 0 0 0 206.2 KB
#7325 AllCycleSimpleBody net472 456μs 98.3ns 368ns 37.9 2.23 0 246.48 KB
#7325 AllCycleMoreComplexBody net6.0 342μs 1.25μs 4.86μs 0 0 0 201.99 KB
#7325 AllCycleMoreComplexBody netcoreapp3.1 504μs 2.41μs 9.32μs 0 0 0 209.62 KB
#7325 AllCycleMoreComplexBody net472 466μs 183ns 686ns 39.4 2.31 0 249.99 KB
#7325 ObjectExtractorSimpleBody net6.0 314ns 0.0913ns 0.354ns 0 0 0 280 B
#7325 ObjectExtractorSimpleBody netcoreapp3.1 399ns 2.26ns 14.6ns 0 0 0 272 B
#7325 ObjectExtractorSimpleBody net472 307ns 0.0262ns 0.0907ns 0.0433 0 0 281 B
#7325 ObjectExtractorMoreComplexBody net6.0 6.29μs 22.2ns 83ns 0 0 0 3.78 KB
#7325 ObjectExtractorMoreComplexBody netcoreapp3.1 7.71μs 36.5ns 141ns 0 0 0 3.69 KB
#7325 ObjectExtractorMoreComplexBody net472 6.74μs 3.11ns 12ns 0.575 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 78.9μs 151ns 565ns 0 0 0 32.4 KB
master EncodeArgs netcoreapp3.1 97.9μs 191ns 740ns 0 0 0 32.4 KB
master EncodeArgs net472 110μs 21.2ns 82.3ns 4.94 0 0 32.5 KB
master EncodeLegacyArgs net6.0 145μs 42.6ns 159ns 0 0 0 2.15 KB
master EncodeLegacyArgs netcoreapp3.1 199μs 27.9ns 104ns 0 0 0 2.14 KB
master EncodeLegacyArgs net472 264μs 17.3ns 64.8ns 0 0 0 2.17 KB
#7325 EncodeArgs net6.0 78.7μs 47.2ns 177ns 0 0 0 32.4 KB
#7325 EncodeArgs netcoreapp3.1 98.4μs 70.4ns 273ns 0 0 0 32.4 KB
#7325 EncodeArgs net472 109μs 28.6ns 111ns 4.93 0 0 32.5 KB
#7325 EncodeLegacyArgs net6.0 145μs 55.2ns 206ns 0 0 0 2.15 KB
#7325 EncodeLegacyArgs netcoreapp3.1 195μs 37.9ns 142ns 0 0 0 2.14 KB
#7325 EncodeLegacyArgs net472 264μs 82.6ns 320ns 0 0 0 2.16 KB
Benchmarks.Trace.Asm.AppSecWafBenchmark - Faster 🎉 Same allocations ✔️

Faster 🎉 in #7325

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.Asm.AppSecWafBenchmark.RunWafRealisticBenchmarkWithAttack‑netcoreapp3.1 2.367 717,898.68 303,274.70
Benchmarks.Trace.Asm.AppSecWafBenchmark.RunWafRealisticBenchmark‑netcoreapp3.1 2.051 859,236.85 418,855.39

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunWafRealisticBenchmark net6.0 396μs 113ns 424ns 0 0 0 4.55 KB
master RunWafRealisticBenchmark netcoreapp3.1 856μs 2.21μs 8.55μs 0 0 0 4.5 KB
master RunWafRealisticBenchmark net472 432μs 116ns 448ns 0 0 0 4.66 KB
master RunWafRealisticBenchmarkWithAttack net6.0 292μs 98.9ns 383ns 0 0 0 2.24 KB
master RunWafRealisticBenchmarkWithAttack netcoreapp3.1 713μs 3.57μs 15.6μs 0 0 0 2.22 KB
master RunWafRealisticBenchmarkWithAttack net472 317μs 42ns 163ns 0 0 0 2.29 KB
#7325 RunWafRealisticBenchmark net6.0 401μs 35.8ns 134ns 0 0 0 4.55 KB
#7325 RunWafRealisticBenchmark netcoreapp3.1 419μs 139ns 521ns 0 0 0 4.48 KB
#7325 RunWafRealisticBenchmark net472 435μs 58.6ns 219ns 0 0 0 4.66 KB
#7325 RunWafRealisticBenchmarkWithAttack net6.0 287μs 40ns 155ns 0 0 0 2.24 KB
#7325 RunWafRealisticBenchmarkWithAttack netcoreapp3.1 305μs 530ns 2.05μs 0 0 0 2.22 KB
#7325 RunWafRealisticBenchmarkWithAttack net472 315μs 37.3ns 145ns 0 0 0 2.29 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 62μs 33.5ns 116ns 0 0 0 14.52 KB
master SendRequest netcoreapp3.1 72.4μs 377ns 1.77μs 0 0 0 17.42 KB
master SendRequest net472 0.0122ns 0.00184ns 0.00714ns 0 0 0 0 b
#7325 SendRequest net6.0 61.1μs 49.8ns 179ns 0 0 0 14.52 KB
#7325 SendRequest netcoreapp3.1 69.7μs 99.7ns 373ns 0 0 0 17.42 KB
#7325 SendRequest net472 0.00381ns 0.00131ns 0.00506ns 0 0 0 0 b
Benchmarks.Trace.CharSliceBenchmark - Faster 🎉 Fewer allocations 🎉

Faster 🎉 in #7325

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 1.115 891,703.33 799,732.45

Fewer allocations 🎉 in #7325

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSlice‑net6.0 7 B 2 B -5 B -71.43%
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 4 B 1 B -3 B -75.00%
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSlice‑net472 73 B 0 b -73 B -100.00%
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net472 47 B 0 b -47 B -100.00%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master OriginalCharSlice net6.0 1.88ms 5.96μs 23.1μs 0 0 0 640.01 KB
master OriginalCharSlice netcoreapp3.1 2.1ms 6.55μs 23.6μs 0 0 0 640 KB
master OriginalCharSlice net472 2.63ms 174ns 627ns 100 0 0 641.95 KB
master OptimizedCharSlice net6.0 1.4ms 567ns 2.2μs 0 0 0 7 B
master OptimizedCharSlice netcoreapp3.1 1.7ms 281ns 1.01μs 0 0 0 1 B
master OptimizedCharSlice net472 2.04ms 617ns 2.39μs 0 0 0 73 B
master OptimizedCharSliceWithPool net6.0 892μs 38.4ns 149ns 0 0 0 4 B
master OptimizedCharSliceWithPool netcoreapp3.1 809μs 228ns 884ns 0 0 0 1 B
master OptimizedCharSliceWithPool net472 1.21ms 23.3ns 84.2ns 0 0 0 47 B
#7325 OriginalCharSlice net6.0 1.89ms 677ns 2.53μs 0 0 0 640.01 KB
#7325 OriginalCharSlice netcoreapp3.1 2.1ms 8.43μs 32.6μs 0 0 0 640 KB
#7325 OriginalCharSlice net472 2.64ms 872ns 3.38μs 100 0 0 641.95 KB
#7325 OptimizedCharSlice net6.0 1.38ms 211ns 791ns 0 0 0 2 B
#7325 OptimizedCharSlice netcoreapp3.1 1.72ms 355ns 1.33μs 0 0 0 1 B
#7325 OptimizedCharSlice net472 2.02ms 359ns 1.39μs 0 0 0 0 b
#7325 OptimizedCharSliceWithPool net6.0 800μs 30.4ns 114ns 0 0 0 1 B
#7325 OptimizedCharSliceWithPool netcoreapp3.1 837μs 66.5ns 249ns 0 0 0 1 B
#7325 OptimizedCharSliceWithPool net472 1.13ms 50ns 180ns 0 0 0 0 b
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7325

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑net472 55.8 KB 56.18 KB 383 B 0.69%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 730μs 2.96μs 11.1μs 0 0 0 41.71 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 707μs 3.7μs 19.3μs 0 0 0 41.91 KB
master WriteAndFlushEnrichedTraces net472 895μs 2.49μs 9.66μs 4.46 0 0 55.8 KB
#7325 WriteAndFlushEnrichedTraces net6.0 668μs 1.09μs 4.37μs 0 0 0 41.73 KB
#7325 WriteAndFlushEnrichedTraces netcoreapp3.1 649μs 3.48μs 19.4μs 0 0 0 41.82 KB
#7325 WriteAndFlushEnrichedTraces net472 931μs 2.53μs 9.48μs 8.33 0 0 56.18 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.94μs 2.24ns 8.67ns 0 0 0 1.02 KB
master ExecuteNonQuery netcoreapp3.1 2.51μs 1.78ns 6.89ns 0 0 0 1.02 KB
master ExecuteNonQuery net472 2.77μs 3.76ns 14.6ns 0.15 0.0136 0 987 B
#7325 ExecuteNonQuery net6.0 1.99μs 8.75ns 33.9ns 0 0 0 1.02 KB
#7325 ExecuteNonQuery netcoreapp3.1 2.58μs 1.37ns 4.76ns 0 0 0 1.02 KB
#7325 ExecuteNonQuery net472 2.67μs 4.18ns 16.2ns 0.147 0.0134 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.69μs 8.67ns 41.6ns 0 0 0 1.03 KB
master CallElasticsearch netcoreapp3.1 2.22μs 8.95ns 34.6ns 0 0 0 1.03 KB
master CallElasticsearch net472 3.53μs 3.87ns 15ns 0.158 0 0 1.04 KB
master CallElasticsearchAsync net6.0 1.83μs 5.42ns 21ns 0 0 0 1.01 KB
master CallElasticsearchAsync netcoreapp3.1 2.56μs 6.11ns 23.6ns 0 0 0 1.08 KB
master CallElasticsearchAsync net472 3.77μs 3.61ns 14ns 0.168 0 0 1.1 KB
#7325 CallElasticsearch net6.0 1.7μs 2.58ns 10ns 0 0 0 1.03 KB
#7325 CallElasticsearch netcoreapp3.1 2.26μs 11.2ns 48.7ns 0 0 0 1.03 KB
#7325 CallElasticsearch net472 3.5μs 3.29ns 12.7ns 0.157 0 0 1.04 KB
#7325 CallElasticsearchAsync net6.0 1.79μs 5.89ns 22.8ns 0 0 0 1.01 KB
#7325 CallElasticsearchAsync netcoreapp3.1 2.42μs 11.7ns 48.3ns 0 0 0 1.08 KB
#7325 CallElasticsearchAsync net472 3.7μs 3.09ns 11.2ns 0.167 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.77μs 5.22ns 20.2ns 0 0 0 952 B
master ExecuteAsync netcoreapp3.1 2.4μs 12ns 53.9ns 0 0 0 952 B
master ExecuteAsync net472 2.55μs 0.64ns 2.39ns 0.14 0 0 915 B
#7325 ExecuteAsync net6.0 1.76μs 7.8ns 30.2ns 0 0 0 952 B
#7325 ExecuteAsync netcoreapp3.1 2.38μs 3.76ns 14.6ns 0 0 0 952 B
#7325 ExecuteAsync net472 2.5μs 2.18ns 8.42ns 0.137 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.06μs 6.39ns 24.8ns 0 0 0 2.36 KB
master SendAsync netcoreapp3.1 8.67μs 19.7ns 73.6ns 0 0 0 2.9 KB
master SendAsync net472 12μs 15ns 58.2ns 0.478 0 0 3.18 KB
#7325 SendAsync net6.0 6.98μs 9.14ns 35.4ns 0 0 0 2.36 KB
#7325 SendAsync netcoreapp3.1 8.5μs 35.6ns 138ns 0 0 0 2.9 KB
#7325 SendAsync net472 12μs 9.96ns 38.6ns 0.477 0 0 3.18 KB
Benchmarks.Trace.Iast.StringAspectsBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7325

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net6.0 252.21 KB 260.34 KB 8.14 KB 3.23%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net472 278.53 KB 280.41 KB 1.88 KB 0.67%

Fewer allocations 🎉 in #7325

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net6.0 46.09 KB 45.36 KB -728 B -1.58%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑netcoreapp3.1 45.63 KB 42.84 KB -2.79 KB -6.12%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑netcoreapp3.1 272.84 KB 255.13 KB -17.71 KB -6.49%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StringConcatBenchmark net6.0 43.4μs 226ns 1.13μs 0 0 0 46.09 KB
master StringConcatBenchmark netcoreapp3.1 51.3μs 344ns 3.28μs 0 0 0 45.63 KB
master StringConcatBenchmark net472 57.5μs 135ns 506ns 0 0 0 57.34 KB
master StringConcatAspectBenchmark net6.0 472μs 1.97μs 7.11μs 0 0 0 252.21 KB
master StringConcatAspectBenchmark netcoreapp3.1 511μs 2.41μs 9.33μs 0 0 0 272.84 KB
master StringConcatAspectBenchmark net472 406μs 2.23μs 12.8μs 0 0 0 278.53 KB
#7325 StringConcatBenchmark net6.0 47.7μs 251ns 1.25μs 0 0 0 45.36 KB
#7325 StringConcatBenchmark netcoreapp3.1 54.3μs 707ns 6.93μs 0 0 0 42.84 KB
#7325 StringConcatBenchmark net472 57.5μs 218ns 816ns 0 0 0 57.34 KB
#7325 StringConcatAspectBenchmark net6.0 480μs 1.47μs 7.5μs 0 0 0 260.34 KB
#7325 StringConcatAspectBenchmark netcoreapp3.1 486μs 2.21μs 8.29μs 0 0 0 255.13 KB
#7325 StringConcatAspectBenchmark net472 405μs 2.25μs 14.6μs 0 0 0 280.41 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.55μs 6.18ns 23.9ns 0 0 0 1.7 KB
master EnrichedLog netcoreapp3.1 3.51μs 17.3ns 77.2ns 0 0 0 1.7 KB
master EnrichedLog net472 3.86μs 2.51ns 9.74ns 0.248 0 0 1.64 KB
#7325 EnrichedLog net6.0 2.6μs 2.03ns 7.86ns 0 0 0 1.7 KB
#7325 EnrichedLog netcoreapp3.1 3.48μs 17ns 70.3ns 0 0 0 1.7 KB
#7325 EnrichedLog net472 3.92μs 5.73ns 22.2ns 0.252 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 156ns 584ns 0 0 0 4.31 KB
master EnrichedLog netcoreapp3.1 128μs 130ns 467ns 0 0 0 4.31 KB
master EnrichedLog net472 167μs 93.9ns 364ns 0 0 0 4.52 KB
#7325 EnrichedLog net6.0 122μs 53.3ns 199ns 0 0 0 4.31 KB
#7325 EnrichedLog netcoreapp3.1 127μs 203ns 784ns 0 0 0 4.31 KB
#7325 EnrichedLog net472 166μs 37.7ns 146ns 0 0 0 4.51 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 4.89μs 9.33ns 34.9ns 0 0 0 2.26 KB
master EnrichedLog netcoreapp3.1 6.62μs 23.1ns 89.6ns 0 0 0 2.26 KB
master EnrichedLog net472 7.61μs 8.99ns 34.8ns 0.302 0 0 2.08 KB
#7325 EnrichedLog net6.0 4.9μs 12.2ns 45.5ns 0 0 0 2.26 KB
#7325 EnrichedLog netcoreapp3.1 6.75μs 23.6ns 91.4ns 0 0 0 2.26 KB
#7325 EnrichedLog net472 7.56μs 5.34ns 20.7ns 0.304 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 2.03μs 10.3ns 41.2ns 0 0 0 1.2 KB
master SendReceive netcoreapp3.1 2.51μs 5.69ns 20.5ns 0 0 0 1.2 KB
master SendReceive net472 3.24μs 0.807ns 3.12ns 0.178 0 0 1.2 KB
#7325 SendReceive net6.0 2.1μs 9.84ns 40.6ns 0 0 0 1.2 KB
#7325 SendReceive netcoreapp3.1 2.57μs 12.4ns 51.1ns 0 0 0 1.2 KB
#7325 SendReceive net472 3.4μs 1.93ns 7.21ns 0.185 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.11μs 2.24ns 8.07ns 0 0 0 1.58 KB
master EnrichedLog netcoreapp3.1 5.45μs 10ns 36.2ns 0 0 0 1.63 KB
master EnrichedLog net472 6.52μs 8.74ns 33.8ns 0.293 0 0 2.03 KB
#7325 EnrichedLog net6.0 4.15μs 4.14ns 15.5ns 0 0 0 1.58 KB
#7325 EnrichedLog netcoreapp3.1 5.44μs 12.3ns 47.7ns 0 0 0 1.63 KB
#7325 EnrichedLog net472 6.61μs 6.67ns 25ns 0.297 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 742ns 3.55ns 14.6ns 0 0 0 576 B
master StartFinishSpan netcoreapp3.1 934ns 0.312ns 1.21ns 0 0 0 576 B
master StartFinishSpan net472 898ns 0.649ns 2.51ns 0.0898 0 0 578 B
master StartFinishScope net6.0 888ns 4.75ns 23.8ns 0 0 0 696 B
master StartFinishScope netcoreapp3.1 1.13μs 0.875ns 3.16ns 0 0 0 696 B
master StartFinishScope net472 1.12μs 0.94ns 3.52ns 0.103 0 0 658 B
#7325 StartFinishSpan net6.0 741ns 0.237ns 0.916ns 0 0 0 576 B
#7325 StartFinishSpan netcoreapp3.1 947ns 3.32ns 12.9ns 0 0 0 576 B
#7325 StartFinishSpan net472 894ns 0.131ns 0.489ns 0.0893 0 0 578 B
#7325 StartFinishScope net6.0 903ns 0.589ns 2.28ns 0 0 0 696 B
#7325 StartFinishScope netcoreapp3.1 1.13μs 6.09ns 31.7ns 0 0 0 696 B
#7325 StartFinishScope net472 1.12μs 1.17ns 4.55ns 0.101 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.04μs 5.09ns 21ns 0 0 0 696 B
master RunOnMethodBegin netcoreapp3.1 1.38μs 1.13ns 4.07ns 0 0 0 696 B
master RunOnMethodBegin net472 1.45μs 0.734ns 2.84ns 0.101 0 0 658 B
#7325 RunOnMethodBegin net6.0 1.06μs 5.31ns 24.9ns 0 0 0 696 B
#7325 RunOnMethodBegin netcoreapp3.1 1.39μs 5.4ns 20.9ns 0 0 0 696 B
#7325 RunOnMethodBegin net472 1.47μs 0.83ns 2.99ns 0.103 0 0 658 B

@dd-trace-dotnet-ci-bot
Copy link

dd-trace-dotnet-ci-bot bot commented Aug 1, 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 (7325) - mean (72ms)  : 71, 73
     .   : milestone, 72,
    master - mean (72ms)  : 71, 73
     .   : milestone, 72,

    section Baseline
    This PR (7325) - mean (68ms)  : 66, 71
     .   : milestone, 68,
    master - mean (69ms)  : 63, 75
     .   : milestone, 69,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (1,035ms)  : 1016, 1053
     .   : milestone, 1035,
    master - mean (1,029ms)  : 1007, 1051
     .   : milestone, 1029,

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

    section Baseline
    This PR (7325) - mean (107ms)  : 104, 109
     .   : milestone, 107,
    master - mean (106ms)  : 103, 108
     .   : milestone, 106,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (725ms)  : 713, 736
     .   : milestone, 725,
    master - mean (724ms)  : 715, 732
     .   : milestone, 724,

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

    section Baseline
    This PR (7325) - mean (95ms)  : 93, 96
     .   : milestone, 95,
    master - mean (94ms)  : 92, 96
     .   : milestone, 94,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (681ms)  : 668, 693
     .   : milestone, 681,
    master - mean (680ms)  : 670, 690
     .   : milestone, 680,

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

    section Baseline
    This PR (7325) - mean (93ms)  : 91, 95
     .   : milestone, 93,
    master - mean (93ms)  : 90, 95
     .   : milestone, 93,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (617ms)  : 605, 628
     .   : milestone, 617,
    master - mean (622ms)  : 614, 630
     .   : milestone, 622,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Framework 4.8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7325) - mean (199ms)  : 194, 205
     .   : milestone, 199,
    master - mean (225ms)  : 201, 248
     .   : milestone, 225,

    section Baseline
    This PR (7325) - mean (197ms)  : 190, 203
     .   : milestone, 197,
    master - mean (219ms)  : 205, 234
     .   : milestone, 219,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (1,166ms)  : 1138, 1195
     .   : milestone, 1166,
    master - mean (1,213ms)  : 1180, 1247
     .   : milestone, 1213,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7325) - mean (283ms)  : 276, 289
     .   : milestone, 283,
    master - mean (313ms)  : 292, 334
     .   : milestone, 313,

    section Baseline
    This PR (7325) - mean (281ms)  : 274, 289
     .   : milestone, 281,
    master - mean (312ms)  : 295, 329
     .   : milestone, 312,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (937ms)  : 913, 961
     .   : milestone, 937,
    master - mean (990ms)  : 958, 1021
     .   : milestone, 990,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7325) - mean (276ms)  : 270, 281
     .   : milestone, 276,
    master - mean (312ms)  : 293, 331
     .   : milestone, 312,

    section Baseline
    This PR (7325) - mean (275ms)  : 269, 281
     .   : milestone, 275,
    master - mean (308ms)  : 292, 325
     .   : milestone, 308,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (919ms)  : 890, 948
     .   : milestone, 919,
    master - mean (1,020ms)  : 900, 1139
     .   : milestone, 1020,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7325) - mean (274ms)  : 268, 280
     .   : milestone, 274,
    master - mean (327ms)  : 299, 355
     .   : milestone, 327,

    section Baseline
    This PR (7325) - mean (274ms)  : 267, 281
     .   : milestone, 274,
    master - mean (318ms)  : 290, 347
     .   : milestone, 318,

    section CallTarget+Inlining+NGEN
    This PR (7325) - mean (829ms)  : 805, 853
     .   : milestone, 829,
    master - mean (991ms)  : 950, 1033
     .   : milestone, 991,

Loading

Copy link
Contributor

github-actions bot commented Aug 1, 2025

Snapshots difference summary

The following differences have been observed in committed snapshots. It is meant to help the reviewer.
The diff is simplistic, so please check some files anyway while we improve it.

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Aug 1, 2025

⚠️ Tests

⚠️ Warnings

🧪 5 Tests failed

BashScript from Datadog.Trace.Tools.dd_dotnet.ArtifactTests.CreatedumpTests (Datadog)
Expected File.Exists(reportFile.Path) to be True, but found False.
Expected helper.StandardOutput "*** [Warning] SampleHelpers.TracerType is null so you may experience missing spans. Ensure automatic instrumentation is correctly enabled for this application to make sure spans are generated. ***
Waiting - PID: 904 - Main thread: 904 - Profiler attached: False
Frame|Samples.Console.dll!REDACTED
Frame|System.Private.CoreLib.dll!System.Progress<System.__Canon>.InvokeHandlers
Frame|Samples.Console.dll!REDACTED
Frame|Samples.Console.dll!REDACTED
Frame|Samples.Console.dll!REDACTED
Crashing...
Datadog - The crash may have been caused by automatic instrumentation, sending 
...
BashScript from Datadog.Trace.Tools.dd_dotnet.ArtifactTests.CreatedumpTests (Datadog)
Expected File.Exists(reportFile.Path) to be True, but found False.
Expected helper.StandardOutput "*** [Warning] SampleHelpers.TracerType is null so you may experience missing spans. Ensure automatic instrumentation is correctly enabled for this application to make sure spans are generated. ***
Waiting - PID: 884 - Main thread: 884 - Profiler attached: False
Frame|Samples.Console.dll!REDACTED
Frame|System.Private.CoreLib.dll!System.Progress<System.__Canon>.InvokeHandlers
Frame|Samples.Console.dll!REDACTED
Frame|Samples.Console.dll!REDACTED
Frame|Samples.Console.dll!REDACTED
Crashing...
Datadog - The crash may have been caused by automatic instrumentation, sending 
...
BashScript from Datadog.Trace.Tools.dd_dotnet.ArtifactTests.CreatedumpTests (Datadog)
Expected File.Exists(reportFile.Path) to be True, but found False.
Expected helper.StandardOutput "*** [Warning] SampleHelpers.TracerType is null so you may experience missing spans. Ensure automatic instrumentation is correctly enabled for this application to make sure spans are generated. ***
Waiting - PID: 1134 - Main thread: 1134 - Profiler attached: False
Frame|Samples.Console.dll!REDACTED
Frame|System.Private.CoreLib.dll!System.Progress<System.__Canon>.InvokeHandlers
Frame|Samples.Console.dll!REDACTED
Frame|Samples.Console.dll!REDACTED
Frame|Samples.Console.dll!REDACTED
Crashing...
Datadog - The crash may have been caused by automatic instrumentation, sending 
...
View all

ℹ️ Info

❄️ No new flaky tests detected

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: d117746 | Docs | Was this helpful? Give us feedback!

@gleocadie gleocadie force-pushed the gleocadie/crashtracker/fix-virtual-offset-computation-on-linux branch from ecaff41 to d117746 Compare August 8, 2025 15:35
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.

1 participant