Improve execution benchmark comment post#7570
Conversation
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing This PR (7570) and master. ✅ No regressions detected - check the details below Full Metrics ComparisonFakeDbCommand
HttpMessageHandler
Comparison explanationExecution-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 highlighted in **red**. The following thresholds were used for comparing the execution times:
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). Duration chartsFakeDbCommand (.NET Framework 4.8)gantt
title Execution time (ms) FakeDbCommand (.NET Framework 4.8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (68ms) : 67, 69
master - mean (68ms) : 67, 70
section Bailout
This PR (7570) - mean (72ms) : 70, 73
master - mean (72ms) : 71, 73
section CallTarget+Inlining+NGEN
This PR (7570) - mean (1,052ms) : 998, 1106
master - mean (1,046ms) : 1004, 1087
FakeDbCommand (.NET Core 3.1)gantt
title Execution time (ms) FakeDbCommand (.NET Core 3.1)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (106ms) : 104, 109
master - mean (106ms) : 104, 108
section Bailout
This PR (7570) - mean (107ms) : 105, 108
master - mean (107ms) : 105, 109
section CallTarget+Inlining+NGEN
This PR (7570) - mean (751ms) : 723, 780
master - mean (748ms) : 725, 771
FakeDbCommand (.NET 6)gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (94ms) : 92, 96
master - mean (94ms) : 92, 96
section Bailout
This PR (7570) - mean (94ms) : 93, 95
master - mean (95ms) : 93, 96
section CallTarget+Inlining+NGEN
This PR (7570) - mean (710ms) : 671, 750
master - mean (708ms) : 679, 738
FakeDbCommand (.NET 8)gantt
title Execution time (ms) FakeDbCommand (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (92ms) : 90, 95
master - mean (92ms) : 90, 95
section Bailout
This PR (7570) - mean (94ms) : 90, 97
master - mean (93ms) : 92, 94
section CallTarget+Inlining+NGEN
This PR (7570) - mean (664ms) : 647, 680
master - mean (666ms) : 652, 680
HttpMessageHandler (.NET Framework 4.8)gantt
title Execution time (ms) HttpMessageHandler (.NET Framework 4.8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (191ms) : 188, 193
master - mean (191ms) : 188, 195
section Bailout
This PR (7570) - mean (196ms) : 191, 200
master - mean (195ms) : 192, 198
section CallTarget+Inlining+NGEN
This PR (7570) - mean (1,160ms) : 1094, 1226
master - mean (1,158ms) : 1098, 1218
HttpMessageHandler (.NET Core 3.1)gantt
title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (274ms) : 268, 280
master - mean (276ms) : 268, 283
section Bailout
This PR (7570) - mean (275ms) : 271, 278
master - mean (277ms) : 272, 282
section CallTarget+Inlining+NGEN
This PR (7570) - mean (946ms) : 904, 988
master - mean (954ms) : 906, 1002
HttpMessageHandler (.NET 6)gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (266ms) : 262, 270
master - mean (268ms) : 262, 273
section Bailout
This PR (7570) - mean (267ms) : 264, 270
master - mean (268ms) : 265, 271
section CallTarget+Inlining+NGEN
This PR (7570) - mean (923ms) : 879, 967
master - mean (936ms) : 881, 991
HttpMessageHandler (.NET 8)gantt
title Execution time (ms) HttpMessageHandler (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (7570) - mean (265ms) : 260, 270
master - mean (267ms) : 263, 271
section Bailout
This PR (7570) - mean (266ms) : 263, 269
master - mean (267ms) : 264, 270
section CallTarget+Inlining+NGEN
This PR (7570) - mean (844ms) : 827, 861
master - mean (850ms) : 835, 866
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bouwkast
left a comment
There was a problem hiding this comment.
Didn't really look at the code but the new comment looks good to me unfortunate that it has so many regressions still as it is noisy but not as noisy as before :)
Yeah, it's really flagging a lot of regressions there @bouwkast and a lot of those "regressions" are in the baseline scenarios which, you know aren't regressions, that's just variability 😅 I'm going to double check the numbers in the tables are actually the values we think should be there by checking the source json, but then fix the regression calculation. Based on the graphs there's only actually a regression in the "bailout" scenarios here. That's obviously still noisy, but it's closer to correct... As for why there's apparent regressions here... 🤷♂️ 😬 |
62518be to
55b37c1
Compare
|
|
OK, fixed the incorrect regression calculations @bouwkast, and compressed the format even further 🙂 |
Summary of changes
Reason for change
The charts currently look a bit borked, and taking up a load of space, without being useful.
Implementation details
Through the issue to claude code and iterated a bit. Overall
<details>element, otherwise GitHub's rendering doesn't work properlyI looked at the code somewhat, but ultimately it looks good enough to me I think. It's a bit verbose, but this is very non-critical stuff 😅
Test coverage
This is the test really 🤷♂️ Instead of something that looks like this, with 8 graphs taking up space:
The default view is more like this:
With more details if you expand the table:
And the charts are working again (and somewhat simplified)
Other details
https://datadoghq.atlassian.net/browse/LANGPLAT-817
https://datadoghq.atlassian.net/browse/LANGPLAT-893