Skip to content

[crashtracker] Demangle function names #1031

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

Open
wants to merge 14 commits into
base: main
Choose a base branch
from

Conversation

danielsn
Copy link
Contributor

@danielsn danielsn commented Apr 18, 2025

What does this PR do?

Adds the ability to demangle stack frames

Motivation

Mangled stack frames are really hard to read, this had been a common request from users.

Additional Notes

Anything else we should know when reviewing?

How to test the change?

New unit tests for the demangler

@pr-commenter
Copy link

pr-commenter bot commented Apr 18, 2025

Benchmarks

Comparison

Benchmark execution time: 2025-05-28 14:29:51

Comparing candidate commit 424b0c3 in PR branch dsn/crashtracker-demagle-names with baseline commit 0a4a372 in branch main.

Found 2 performance improvements and 3 performance regressions! Performance is the same for 47 metrics, 2 unstable metrics.

scenario:credit_card/is_card_number/378282246310005

  • 🟩 execution_time [-9.887µs; -9.722µs] or [-12.733%; -12.520%]
  • 🟩 throughput [+1845120.108op/s; +1877593.036op/s] or [+14.327%; +14.580%]

scenario:normalization/normalize_service/normalize_service/[empty string]

  • 🟥 execution_time [+3.361µs; +3.386µs] or [+8.426%; +8.488%]
  • 🟥 throughput [-1961608.157op/s; -1947878.896op/s] or [-7.825%; -7.770%]

scenario:normalization/normalize_trace/test_trace

  • 🟥 execution_time [+20.250ns; +24.779ns] or [+7.744%; +9.476%]

Candidate

Candidate benchmark details

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... execution_time 534.476µs 535.298µs ± 0.542µs 535.233µs ± 0.252µs 535.485µs 535.881µs 536.357µs 539.448µs 0.79% 4.080 27.717 0.10% 0.038µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 1853746.389op/s 1868120.428op/s ± 1882.216op/s 1868345.496op/s ± 880.387op/s 1869219.867op/s 1870018.573op/s 1870831.077op/s 1870989.959op/s 0.14% -4.041 27.336 0.10% 133.093op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 446.488µs 447.379µs ± 0.633µs 447.313µs ± 0.302µs 447.623µs 448.115µs 449.742µs 452.271µs 1.11% 3.916 24.823 0.14% 0.045µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2211062.254op/s 2235247.638op/s ± 3143.303op/s 2235569.816op/s ± 1511.860op/s 2237020.423op/s 2238735.584op/s 2239205.474op/s 2239700.597op/s 0.18% -3.867 24.355 0.14% 222.265op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 186.428µs 186.858µs ± 0.213µs 186.837µs ± 0.147µs 187.009µs 187.238µs 187.383µs 187.511µs 0.36% 0.455 -0.209 0.11% 0.015µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5333031.839op/s 5351661.125op/s ± 6086.754op/s 5352262.502op/s ± 4214.282op/s 5356070.209op/s 5360097.012op/s 5363252.315op/s 5364005.432op/s 0.22% -0.450 -0.216 0.11% 430.399op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 43.124µs 43.263µs ± 0.075µs 43.252µs ± 0.040µs 43.300µs 43.380µs 43.540µs 43.558µs 0.71% 1.527 3.625 0.17% 0.005µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 22957856.178op/s 23114432.516op/s ± 40105.977op/s 23120285.139op/s ± 21190.878op/s 23139614.291op/s 23165331.001op/s 23173545.439op/s 23188800.783op/s 0.30% -1.510 3.560 0.17% 2835.921op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 46.998µs 47.126µs ± 0.109µs 47.118µs ± 0.035µs 47.152µs 47.198µs 47.308µs 48.334µs 2.58% 7.823 79.614 0.23% 0.008µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 20689364.992op/s 21219699.825op/s ± 48054.698op/s 21223129.493op/s ± 15720.191op/s 21239675.117op/s 21258019.000op/s 21268934.631op/s 21277663.952op/s 0.26% -7.683 77.471 0.23% 3397.980op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... execution_time [535.223µs; 535.373µs] or [-0.014%; +0.014%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [1867859.571op/s; 1868381.285op/s] or [-0.014%; +0.014%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [447.291µs; 447.466µs] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2234812.006op/s; 2235683.269op/s] or [-0.019%; +0.019%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [186.829µs; 186.888µs] or [-0.016%; +0.016%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5350817.559op/s; 5352504.690op/s] or [-0.016%; +0.016%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [43.253µs; 43.274µs] or [-0.024%; +0.024%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [23108874.213op/s; 23119990.818op/s] or [-0.024%; +0.024%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [47.111µs; 47.141µs] or [-0.032%; +0.032%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21213039.906op/s; 21226359.744op/s] or [-0.031%; +0.031%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... execution_time 215.445µs 215.803µs ± 0.175µs 215.775µs ± 0.115µs 215.907µs 216.131µs 216.249µs 216.404µs 0.29% 0.659 0.296 0.08% 0.012µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 4620982.521op/s 4633849.568op/s ± 3761.641op/s 4634446.749op/s ± 2465.325op/s 4636428.207op/s 4639152.899op/s 4640034.298op/s 4641566.023op/s 0.15% -0.655 0.287 0.08% 265.988op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 19.658µs 19.775µs ± 0.106µs 19.772µs ± 0.034µs 19.802µs 19.851µs 19.889µs 21.092µs 6.68% 9.727 118.911 0.53% 0.007µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 47411609.766op/s 50569846.962op/s ± 257170.915op/s 50577611.475op/s ± 87686.574op/s 50680982.552op/s 50791105.281op/s 50855554.291op/s 50871091.350op/s 0.58% -9.308 112.046 0.51% 18184.730op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 11.938µs 12.127µs ± 0.053µs 12.130µs ± 0.031µs 12.165µs 12.197µs 12.227µs 12.312µs 1.50% -0.416 1.282 0.43% 0.004µs 1 200
normalization/normalize_name/normalize_name/good throughput 81221520.911op/s 82458865.706op/s ± 358112.281op/s 82440044.995op/s ± 212878.869op/s 82643947.831op/s 83036960.276op/s 83464467.335op/s 83765412.345op/s 1.61% 0.457 1.319 0.43% 25322.362op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... execution_time [215.779µs; 215.828µs] or [-0.011%; +0.011%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [4633328.241op/s; 4634370.895op/s] or [-0.011%; +0.011%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [19.761µs; 19.790µs] or [-0.074%; +0.074%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [50534205.547op/s; 50605488.378op/s] or [-0.070%; +0.070%] None None None
normalization/normalize_name/normalize_name/good execution_time [12.120µs; 12.135µs] or [-0.060%; +0.060%] None None None
normalization/normalize_name/normalize_name/good throughput [82409234.788op/s; 82508496.624op/s] or [-0.060%; +0.060%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
credit_card/is_card_number/ execution_time 3.895µs 3.912µs ± 0.003µs 3.912µs ± 0.002µs 3.913µs 3.916µs 3.919µs 3.934µs 0.57% 1.546 14.809 0.09% 0.000µs 1 200
credit_card/is_card_number/ throughput 254188592.422op/s 255630470.817op/s ± 219754.398op/s 255626802.470op/s ± 111490.437op/s 255751699.135op/s 255909491.859op/s 255956122.247op/s 256751633.778op/s 0.44% -1.509 14.674 0.09% 15538.983op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 76.884µs 77.697µs ± 0.485µs 77.646µs ± 0.361µs 78.005µs 78.542µs 78.900µs 78.940µs 1.67% 0.523 -0.421 0.62% 0.034µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12667861.439op/s 12871015.772op/s ± 80080.514op/s 12878910.141op/s ± 59711.518op/s 12939588.367op/s 12981896.276op/s 12998978.089op/s 13006678.173op/s 0.99% -0.499 -0.458 0.62% 5662.547op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 70.887µs 71.401µs ± 0.306µs 71.359µs ± 0.208µs 71.590µs 71.956µs 72.211µs 72.686µs 1.86% 1.017 1.602 0.43% 0.022µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13757830.539op/s 14005715.811op/s ± 59766.252op/s 14013590.392op/s ± 40814.860op/s 14049784.357op/s 14080781.939op/s 14100177.115op/s 14106869.411op/s 0.67% -0.984 1.480 0.43% 4226.112op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.893µs 3.911µs ± 0.002µs 3.911µs ± 0.001µs 3.913µs 3.915µs 3.917µs 3.917µs 0.15% -1.765 13.557 0.06% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 255278993.883op/s 255664868.615op/s ± 162007.979op/s 255664449.858op/s ± 97777.278op/s 255765341.651op/s 255878895.189op/s 255938316.196op/s 256866791.715op/s 0.47% 1.788 13.760 0.06% 11455.694op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 66.976µs 67.847µs ± 0.458µs 67.788µs ± 0.283µs 68.095µs 68.584µs 69.108µs 69.866µs 3.07% 0.865 1.757 0.67% 0.032µs 1 200
credit_card/is_card_number/378282246310005 throughput 14313069.380op/s 14739606.896op/s ± 98969.495op/s 14751883.054op/s ± 61618.130op/s 14808000.443op/s 14893414.627op/s 14909599.728op/s 14930634.090op/s 1.21% -0.806 1.556 0.67% 6998.200op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 51.734µs 51.826µs ± 0.040µs 51.825µs ± 0.026µs 51.851µs 51.895µs 51.931µs 51.982µs 0.30% 0.505 0.651 0.08% 0.003µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 19237378.743op/s 19295258.828op/s ± 14955.553op/s 19295732.614op/s ± 9654.513op/s 19305236.867op/s 19317812.656op/s 19323401.036op/s 19329566.924op/s 0.18% -0.499 0.639 0.08% 1057.517op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.072µs 6.240µs ± 0.063µs 6.234µs ± 0.042µs 6.277µs 6.350µs 6.389µs 6.435µs 3.22% 0.189 -0.075 1.01% 0.004µs 1 200
credit_card/is_card_number/x371413321323331 throughput 155392944.302op/s 160261351.202op/s ± 1621442.635op/s 160401928.545op/s ± 1089819.508op/s 161495145.269op/s 162593867.152op/s 163705423.362op/s 164685362.622op/s 2.67% -0.132 -0.096 1.01% 114653.308op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.895µs 3.911µs ± 0.003µs 3.911µs ± 0.002µs 3.913µs 3.917µs 3.918µs 3.919µs 0.21% -0.213 2.730 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 255147987.329op/s 255671060.045op/s ± 201233.055op/s 255684812.331op/s ± 126864.061op/s 255807650.285op/s 255942727.127op/s 256000158.138op/s 256709613.238op/s 0.40% 0.224 2.774 0.08% 14229.326op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 65.984µs 66.330µs ± 0.207µs 66.305µs ± 0.126µs 66.434µs 66.679µs 66.807µs 67.615µs 1.98% 1.856 7.740 0.31% 0.015µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 14789524.981op/s 15076178.905op/s ± 46723.232op/s 15081738.278op/s ± 28694.741op/s 15108959.615op/s 15131921.911op/s 15148396.742op/s 15155221.079op/s 0.49% -1.799 7.325 0.31% 3303.831op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 59.385µs 59.603µs ± 0.081µs 59.603µs ± 0.051µs 59.651µs 59.744µs 59.776µs 59.861µs 0.43% 0.137 -0.070 0.14% 0.006µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 16705413.946op/s 16777598.393op/s ± 22789.580op/s 16777664.735op/s ± 14354.297op/s 16793167.700op/s 16812321.414op/s 16826011.988op/s 16839223.604op/s 0.37% -0.129 -0.074 0.14% 1611.467op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.896µs 3.912µs ± 0.003µs 3.911µs ± 0.002µs 3.913µs 3.918µs 3.919µs 3.920µs 0.22% -0.133 3.096 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 255115326.694op/s 255651319.735op/s ± 201529.901op/s 255669127.953op/s ± 119148.568op/s 255780411.007op/s 255929807.054op/s 256000216.068op/s 256697088.501op/s 0.40% 0.145 3.141 0.08% 14250.316op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 56.151µs 56.270µs ± 0.092µs 56.250µs ± 0.043µs 56.303µs 56.435µs 56.590µs 56.835µs 1.04% 2.423 9.383 0.16% 0.006µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 17594743.244op/s 17771420.167op/s ± 28793.053op/s 17777763.574op/s ± 13640.531op/s 17789753.991op/s 17801882.460op/s 17804775.870op/s 17809091.541op/s 0.18% -2.396 9.183 0.16% 2035.976op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 51.739µs 51.801µs ± 0.034µs 51.800µs ± 0.026µs 51.823µs 51.854µs 51.890µs 51.920µs 0.23% 0.405 -0.042 0.07% 0.002µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 19260381.395op/s 19304622.929op/s ± 12581.389op/s 19305164.131op/s ± 9707.360op/s 19315555.785op/s 19323605.523op/s 19327253.050op/s 19327851.434op/s 0.12% -0.402 -0.050 0.07% 889.639op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.061µs 6.215µs ± 0.064µs 6.215µs ± 0.044µs 6.261µs 6.315µs 6.367µs 6.393µs 2.86% 0.103 -0.125 1.02% 0.005µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 156416791.250op/s 160927271.364op/s ± 1652363.536op/s 160890875.246op/s ± 1138678.946op/s 162002869.923op/s 163651066.452op/s 164604936.480op/s 164975776.589op/s 2.54% -0.046 -0.149 1.02% 116839.746op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
credit_card/is_card_number/ execution_time [3.911µs; 3.912µs] or [-0.012%; +0.012%] None None None
credit_card/is_card_number/ throughput [255600014.971op/s; 255660926.663op/s] or [-0.012%; +0.012%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [77.630µs; 77.764µs] or [-0.087%; +0.087%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12859917.383op/s; 12882114.161op/s] or [-0.086%; +0.086%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [71.358µs; 71.443µs] or [-0.059%; +0.059%] None None None
credit_card/is_card_number/ 378282246310005 throughput [13997432.783op/s; 14013998.838op/s] or [-0.059%; +0.059%] None None None
credit_card/is_card_number/37828224631 execution_time [3.911µs; 3.912µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/37828224631 throughput [255642415.867op/s; 255687321.363op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/378282246310005 execution_time [67.784µs; 67.911µs] or [-0.094%; +0.094%] None None None
credit_card/is_card_number/378282246310005 throughput [14725890.676op/s; 14753323.116op/s] or [-0.093%; +0.093%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [51.821µs; 51.832µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [19293186.132op/s; 19297331.523op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.232µs; 6.249µs] or [-0.140%; +0.140%] None None None
credit_card/is_card_number/x371413321323331 throughput [160036634.848op/s; 160486067.557op/s] or [-0.140%; +0.140%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.911µs; 3.912µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ throughput [255643171.079op/s; 255698949.011op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [66.302µs; 66.359µs] or [-0.043%; +0.043%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15069703.515op/s; 15082654.296op/s] or [-0.043%; +0.043%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [59.592µs; 59.615µs] or [-0.019%; +0.019%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [16774439.977op/s; 16780756.810op/s] or [-0.019%; +0.019%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.911µs; 3.912µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255623389.629op/s; 255679249.841op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [56.258µs; 56.283µs] or [-0.023%; +0.023%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [17767429.727op/s; 17775410.608op/s] or [-0.022%; +0.022%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [51.796µs; 51.806µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [19302879.269op/s; 19306366.589op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.206µs; 6.223µs] or [-0.142%; +0.142%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [160698269.669op/s; 161156273.058op/s] or [-0.142%; +0.142%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
two way interface execution_time 18.241µs 25.954µs ± 10.433µs 18.490µs ± 0.164µs 35.665µs 44.979µs 51.979µs 73.467µs 297.33% 1.152 0.950 40.10% 0.738µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [24.508µs; 27.400µs] or [-5.571%; +5.571%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_trace/test_trace execution_time 267.374ns 283.997ns ± 11.802ns 278.919ns ± 3.332ns 286.111ns 309.728ns 320.072ns 324.275ns 16.26% 1.521 1.767 4.15% 0.835ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_trace/test_trace execution_time [282.362ns; 285.633ns] or [-0.576%; +0.576%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
ip_address/quantize_peer_ip_address_benchmark execution_time 4.944µs 5.014µs ± 0.034µs 5.019µs ± 0.028µs 5.036µs 5.069µs 5.074µs 5.079µs 1.20% -0.095 -0.828 0.68% 0.002µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
ip_address/quantize_peer_ip_address_benchmark execution_time [5.009µs; 5.019µs] or [-0.094%; +0.094%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
concentrator/add_spans_to_concentrator execution_time 5.877ms 5.888ms ± 0.005ms 5.888ms ± 0.003ms 5.891ms 5.897ms 5.901ms 5.920ms 0.54% 1.179 4.790 0.09% 0.000ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
concentrator/add_spans_to_concentrator execution_time [5.887ms; 5.889ms] or [-0.013%; +0.013%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching deserializing traces from msgpack to their internal representation execution_time 72.603ms 73.015ms ± 0.343ms 72.902ms ± 0.141ms 73.141ms 73.653ms 73.900ms 75.465ms 3.52% 2.644 12.763 0.47% 0.024ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching deserializing traces from msgpack to their internal representation execution_time [72.968ms; 73.063ms] or [-0.065%; +0.065%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
redis/obfuscate_redis_string execution_time 33.990µs 34.404µs ± 0.514µs 34.122µs ± 0.073µs 34.935µs 35.150µs 35.786µs 37.388µs 9.57% 1.818 4.888 1.49% 0.036µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
redis/obfuscate_redis_string execution_time [34.333µs; 34.476µs] or [-0.207%; +0.207%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
write only interface execution_time 1.264µs 3.171µs ± 1.447µs 3.002µs ± 0.026µs 3.023µs 3.299µs 13.991µs 15.108µs 403.27% 7.519 56.972 45.54% 0.102µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
write only interface execution_time [2.970µs; 3.372µs] or [-6.327%; +6.327%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching string interning on wordpress profile execution_time 149.548µs 150.561µs ± 0.578µs 150.525µs ± 0.147µs 150.684µs 150.999µs 151.319µs 157.726µs 4.78% 9.564 116.692 0.38% 0.041µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching string interning on wordpress profile execution_time [150.481µs; 150.642µs] or [-0.053%; +0.053%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sql/obfuscate_sql_string execution_time 65.883µs 66.062µs ± 0.204µs 66.029µs ± 0.052µs 66.089µs 66.244µs 66.678µs 68.467µs 3.69% 8.661 95.923 0.31% 0.014µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sql/obfuscate_sql_string execution_time [66.034µs; 66.090µs] or [-0.043%; +0.043%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 424b0c3 1748441950 dsn/crashtracker-demagle-names
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
tags/replace_trace_tags execution_time 2.352µs 2.392µs ± 0.020µs 2.387µs ± 0.010µs 2.403µs 2.441µs 2.448µs 2.452µs 2.72% 1.018 0.832 0.85% 0.001µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
tags/replace_trace_tags execution_time [2.389µs; 2.395µs] or [-0.118%; +0.118%] None None None

Baseline

Omitted due to size.

@codecov-commenter
Copy link

codecov-commenter commented Apr 18, 2025

Codecov Report

Attention: Patch coverage is 58.82353% with 49 lines in your changes missing coverage. Please review.

Project coverage is 70.92%. Comparing base (0a4a372) to head (424b0c3).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1031      +/-   ##
==========================================
- Coverage   70.94%   70.92%   -0.03%     
==========================================
  Files         323      323              
  Lines       49499    49615     +116     
==========================================
+ Hits        35117    35188      +71     
- Misses      14382    14427      +45     
Components Coverage Δ
datadog-crashtracker 42.60% <59.32%> (+0.55%) ⬆️
datadog-crashtracker-ffi 6.03% <0.00%> (-0.08%) ⬇️
datadog-alloc 98.73% <ø> (ø)
data-pipeline 90.61% <ø> (ø)
data-pipeline-ffi 89.26% <ø> (ø)
ddcommon 78.28% <ø> (ø)
ddcommon-ffi 66.37% <ø> (ø)
ddtelemetry 60.56% <ø> (ø)
ddtelemetry-ffi 21.32% <ø> (ø)
dogstatsd-client 83.26% <ø> (ø)
datadog-ipc 82.58% <ø> (ø)
datadog-profiling 77.49% <ø> (ø)
datadog-profiling-ffi 62.12% <ø> (ø)
datadog-sidecar 41.51% <ø> (+0.03%) ⬆️
datdog-sidecar-ffi 4.08% <ø> (+0.29%) ⬆️
spawn-worker 55.35% <ø> (ø)
tinybytes 90.96% <ø> (ø)
datadog-trace-normalization 98.24% <ø> (ø)
datadog-trace-obfuscation 94.16% <ø> (ø)
datadog-trace-protobuf 77.10% <ø> (ø)
datadog-trace-utils 89.52% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@r1viollet
Copy link
Contributor

r1viollet commented Apr 18, 2025

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 66.02 MB 66.04 MB +.03% (+24.68 KB) 🔍
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 8.03 MB 8.03 MB +0% (+760 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so.debug 20.31 MB 20.31 MB +.04% (+9.58 KB) 🔍
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 8.00 MB 8.00 MB +0% (+728 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 72.62 MB 72.64 MB +.03% (+23.78 KB) 🔍
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so.debug 22.70 MB 22.71 MB +.03% (+7.89 KB) 🔍
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 16.71 MB 16.72 MB +.06% (+11.50 KB) 🔍
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 62.31 KB 62.62 KB +.50% (+320 B) 🔍
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 112.66 MB 112.71 MB +.04% (+48.00 KB) 🔍
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 631.82 MB 632.09 MB +.04% (+270.25 KB) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 4.99 MB 4.99 MB +.02% (+1.50 KB) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 62.31 KB 62.62 KB +.50% (+320 B) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 15.88 MB 15.89 MB +.04% (+8.00 KB) 🔍
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 26.43 MB 26.44 MB +.03% (+10.31 KB) 🔍
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 14.15 MB 14.16 MB +.05% (+8.00 KB) 🔍
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 63.26 KB 63.58 KB +.50% (+324 B) 🔍
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 114.52 MB 114.57 MB +.04% (+48.00 KB) 🔍
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 624.40 MB 624.67 MB +.04% (+282.40 KB) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 3.78 MB 3.78 MB +.06% (+2.50 KB) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 63.26 KB 63.58 KB +.50% (+324 B) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 16.49 MB 16.51 MB +.09% (+16.00 KB) 🔍
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 24.34 MB 24.36 MB +.07% (+18.86 KB) 🔍
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 57.50 MB 57.52 MB +.03% (+21.40 KB) 🔍
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 8.43 MB 8.43 MB +0% (+464 B) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so.debug 18.71 MB 18.71 MB +.03% (+6.82 KB) 🔍
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 68.61 MB 68.63 MB +.04% (+28.44 KB) 🔍
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 8.43 MB 8.43 MB +0% (+848 B) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so.debug 20.90 MB 20.91 MB +.04% (+9.18 KB) 🔍

@danielsn danielsn marked this pull request as ready for review May 23, 2025 19:38
@danielsn danielsn requested review from a team as code owners May 23, 2025 19:38
Copy link
Contributor

@gleocadie gleocadie left a comment

Choose a reason for hiding this comment

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

LGTM

@danielsn danielsn enabled auto-merge (squash) May 28, 2025 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants