Skip to content

Conversation

@morrisonlevi
Copy link
Contributor

What does this PR do?

On the FFI headers on windows, this attends to replace "extern " with "extern __declspec(dllimport) ".

Motivation

These static variables result in a crash if you use them when they don't have __declspec(dllimport) .

Additional Notes

This went unfound because none of the examples run on Windows in CI. I am planning to look into running these as part of CI (this is in draft still).

How to test the change?

Build and note you don't get a crash anymore when using these static vars on Windows 😆

@morrisonlevi morrisonlevi changed the title fix(profiling): Windows extern statics need __declspec(dllimport) fix(profiling-ffi): Windows extern statics need __declspec(dllimport) Jan 22, 2026
@morrisonlevi morrisonlevi added bug Something isn't working profiling Relates to the profiling* modules. labels Jan 22, 2026
@pr-commenter
Copy link

pr-commenter bot commented Jan 22, 2026

Benchmarks

Comparison

Benchmark execution time: 2026-02-09 22:26:12

Comparing candidate commit 94e8ff9 in PR branch levi/fix-windows-declspec-vars with baseline commit e0df0d6 in branch main.

Found 0 performance improvements and 1 performance regressions! Performance is the same for 56 metrics, 2 unstable metrics.

scenario:single_flag_killswitch/rules-based

  • 🟥 execution_time [+8.765ns; +9.616ns] or [+4.591%; +5.037%]

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 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 205.063µs 205.688µs ± 0.378µs 205.691µs ± 0.270µs 205.942µs 206.318µs 206.829µs 206.865µs 0.57% 0.485 0.008 0.18% 0.027µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 4834066.108op/s 4861742.461op/s ± 8932.530op/s 4861658.231op/s ± 6377.421op/s 4868855.086op/s 4875067.470op/s 4876001.329op/s 4876558.489op/s 0.31% -0.475 -0.012 0.18% 631.625op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 18.578µs 18.660µs ± 0.049µs 18.649µs ± 0.024µs 18.679µs 18.748µs 18.852µs 18.894µs 1.31% 1.671 4.688 0.26% 0.003µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 52927757.200op/s 53591171.870op/s ± 141007.765op/s 53621483.692op/s ± 69786.524op/s 53672464.472op/s 53768001.194op/s 53804672.271op/s 53826051.535op/s 0.38% -1.640 4.540 0.26% 9970.755op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 10.772µs 10.843µs ± 0.034µs 10.838µs ± 0.021µs 10.860µs 10.901µs 10.935µs 10.972µs 1.23% 0.706 0.641 0.31% 0.002µs 1 200
normalization/normalize_name/normalize_name/good throughput 91140579.125op/s 92230526.862op/s ± 288369.368op/s 92264761.911op/s ± 177908.649op/s 92435691.172op/s 92648831.508op/s 92746718.806op/s 92835310.867op/s 0.62% -0.686 0.594 0.31% 20390.794op/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 [205.636µs; 205.741µs] or [-0.025%; +0.025%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [4860504.498op/s; 4862980.424op/s] or [-0.025%; +0.025%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [18.653µs; 18.667µs] or [-0.037%; +0.037%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [53571629.549op/s; 53610714.190op/s] or [-0.036%; +0.036%] None None None
normalization/normalize_name/normalize_name/good execution_time [10.838µs; 10.847µs] or [-0.043%; +0.043%] None None None
normalization/normalize_name/normalize_name/good throughput [92190561.641op/s; 92270492.083op/s] or [-0.043%; +0.043%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 246.978ns 257.017ns ± 12.170ns 251.159ns ± 2.448ns 258.863ns 284.738ns 292.884ns 294.664ns 17.32% 1.625 1.434 4.72% 0.861ns 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 [255.330ns; 258.703ns] or [-0.656%; +0.656%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 535.055µs 536.833µs ± 1.420µs 536.232µs ± 0.520µs 537.861µs 539.596µs 541.386µs 542.163µs 1.11% 1.299 1.141 0.26% 0.100µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 1844462.949op/s 1862790.557op/s ± 4911.274op/s 1864864.359op/s ± 1807.870op/s 1866030.840op/s 1867727.321op/s 1868850.795op/s 1868968.386op/s 0.22% -1.287 1.095 0.26% 347.280op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 381.608µs 382.277µs ± 0.309µs 382.279µs ± 0.188µs 382.458µs 382.716µs 382.962µs 384.268µs 0.52% 1.439 7.522 0.08% 0.022µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2602353.387op/s 2615909.093op/s ± 2115.336op/s 2615893.761op/s ± 1287.170op/s 2617262.836op/s 2619010.424op/s 2619764.081op/s 2620490.136op/s 0.18% -1.421 7.392 0.08% 149.577op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 189.791µs 190.407µs ± 0.227µs 190.398µs ± 0.113µs 190.525µs 190.666µs 190.758µs 192.513µs 1.11% 3.837 35.685 0.12% 0.016µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5194444.023op/s 5251908.155op/s ± 6224.266op/s 5252145.400op/s ± 3128.434op/s 5255199.211op/s 5261018.698op/s 5262231.040op/s 5268959.439op/s 0.32% -3.756 34.761 0.12% 440.122op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 36.470µs 36.590µs ± 0.048µs 36.588µs ± 0.029µs 36.618µs 36.669µs 36.712µs 36.737µs 0.41% 0.281 0.338 0.13% 0.003µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 27220147.316op/s 27330258.056op/s ± 35696.822op/s 27331043.112op/s ± 21767.514op/s 27352031.513op/s 27390493.947op/s 27409209.833op/s 27420119.317op/s 0.33% -0.272 0.329 0.13% 2524.146op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 45.908µs 46.044µs ± 0.049µs 46.040µs ± 0.030µs 46.072µs 46.133µs 46.185µs 46.225µs 0.40% 0.590 1.026 0.11% 0.003µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 21633466.107op/s 21718281.773op/s ± 23166.559op/s 21720285.202op/s ± 14138.733op/s 21733888.581op/s 21752803.701op/s 21763567.890op/s 21782695.826op/s 0.29% -0.582 1.011 0.11% 1638.123op/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 [536.636µs; 537.030µs] or [-0.037%; +0.037%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [1862109.901op/s; 1863471.212op/s] or [-0.037%; +0.037%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [382.234µs; 382.319µs] or [-0.011%; +0.011%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2615615.928op/s; 2616202.258op/s] or [-0.011%; +0.011%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [190.376µs; 190.439µs] or [-0.016%; +0.016%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5251045.531op/s; 5252770.778op/s] or [-0.016%; +0.016%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [36.583µs; 36.596µs] or [-0.018%; +0.018%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [27325310.820op/s; 27335205.292op/s] or [-0.018%; +0.018%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [46.037µs; 46.051µs] or [-0.015%; +0.015%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21715071.111op/s; 21721492.435op/s] or [-0.015%; +0.015%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sdk_test_data/rules-based execution_time 143.901µs 145.872µs ± 1.919µs 145.567µs ± 0.548µs 146.136µs 147.648µs 152.192µs 165.416µs 13.64% 6.498 57.238 1.31% 0.136µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sdk_test_data/rules-based execution_time [145.606µs; 146.138µs] or [-0.182%; +0.182%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 10.645ms 10.674ms ± 0.014ms 10.673ms ± 0.009ms 10.682ms 10.698ms 10.710ms 10.745ms 0.67% 1.002 2.953 0.13% 0.001ms 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 [10.672ms; 10.676ms] or [-0.019%; +0.019%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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.171µs 3.241µs ± 1.441µs 2.993µs ± 0.036µs 3.033µs 3.739µs 14.173µs 14.811µs 394.89% 7.222 53.808 44.36% 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 [3.041µs; 3.440µs] or [-6.164%; +6.164%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
single_flag_killswitch/rules-based execution_time 197.762ns 200.099ns ± 2.276ns 199.766ns ± 1.387ns 201.157ns 203.412ns 210.810ns 214.079ns 7.16% 2.796 13.022 1.13% 0.161ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
single_flag_killswitch/rules-based execution_time [199.783ns; 200.414ns] or [-0.158%; +0.158%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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.238µs 23.801µs ± 9.190µs 18.545µs ± 0.154µs 29.828µs 44.929µs 46.279µs 51.770µs 179.16% 1.404 0.455 38.52% 0.650µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [22.527µs; 25.074µs] or [-5.351%; +5.351%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
profile_add_sample_frames_x1000 execution_time 3.917ms 3.922ms ± 0.007ms 3.921ms ± 0.001ms 3.922ms 3.925ms 3.931ms 4.012ms 2.32% 11.766 153.038 0.17% 0.000ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample_frames_x1000 execution_time [3.921ms; 3.923ms] or [-0.024%; +0.024%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching serializing traces from their internal representation to msgpack execution_time 13.999ms 14.052ms ± 0.030ms 14.049ms ± 0.014ms 14.064ms 14.087ms 14.183ms 14.245ms 1.40% 2.585 11.672 0.22% 0.002ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching serializing traces from their internal representation to msgpack execution_time [14.048ms; 14.056ms] or [-0.030%; +0.030%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 160.514µs 161.143µs ± 0.555µs 161.092µs ± 0.118µs 161.214µs 161.548µs 161.867µs 168.273µs 4.46% 10.723 135.090 0.34% 0.039µ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 [161.066µs; 161.219µs] or [-0.048%; +0.048%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 34.256µs 34.605µs ± 0.518µs 34.388µs ± 0.052µs 34.478µs 35.536µs 35.590µs 38.549µs 12.10% 3.119 15.803 1.49% 0.037µ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.533µs; 34.677µs] or [-0.207%; +0.207%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
receiver_entry_point/report/2597 execution_time 9.551ms 9.853ms ± 0.090ms 9.858ms ± 0.043ms 9.904ms 9.982ms 10.034ms 10.105ms 2.50% -0.885 1.821 0.91% 0.006ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
receiver_entry_point/report/2597 execution_time [9.841ms; 9.866ms] or [-0.126%; +0.126%] None None None

Group 14

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 48.749ms 49.168ms ± 1.221ms 49.003ms ± 0.093ms 49.123ms 49.264ms 54.575ms 63.865ms 30.33% 9.935 108.686 2.48% 0.086ms 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 [48.999ms; 49.338ms] or [-0.344%; +0.344%] None None None

Group 15

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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.892µs 3.913µs ± 0.003µs 3.912µs ± 0.001µs 3.914µs 3.917µs 3.919µs 3.921µs 0.23% -1.712 16.614 0.07% 0.000µs 1 200
credit_card/is_card_number/ throughput 255009728.980op/s 255589267.471op/s ± 175142.656op/s 255605917.277op/s ± 88242.098op/s 255682010.006op/s 255770597.710op/s 255909582.550op/s 256938237.114op/s 0.52% 1.744 16.877 0.07% 12384.456op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 77.042µs 77.535µs ± 0.467µs 77.431µs ± 0.279µs 77.719µs 78.521µs 79.111µs 79.522µs 2.70% 1.498 2.388 0.60% 0.033µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12575098.439op/s 12897873.070op/s ± 76983.579op/s 12914679.534op/s ± 46770.054op/s 12960682.565op/s 12970115.732op/s 12975286.388op/s 12979961.756op/s 0.51% -1.460 2.222 0.60% 5443.561op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 70.648µs 70.873µs ± 0.283µs 70.747µs ± 0.051µs 70.972µs 71.512µs 71.824µs 72.456µs 2.42% 2.308 6.262 0.40% 0.020µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13801526.801op/s 14109946.491op/s ± 55742.068op/s 14134886.313op/s ± 10144.392op/s 14142159.191op/s 14149468.665op/s 14152343.011op/s 14154652.529op/s 0.14% -2.274 6.005 0.39% 3941.559op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.896µs 3.912µs ± 0.003µs 3.912µs ± 0.001µs 3.913µs 3.917µs 3.920µs 3.923µs 0.29% -0.139 7.254 0.07% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 254883573.252op/s 255602311.915op/s ± 175676.009op/s 255632490.890op/s ± 86188.149op/s 255710147.146op/s 255783761.449op/s 255854858.084op/s 256669078.044op/s 0.41% 0.158 7.335 0.07% 12422.170op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 67.428µs 67.624µs ± 0.275µs 67.522µs ± 0.048µs 67.611µs 68.113µs 68.766µs 69.367µs 2.73% 3.556 15.554 0.41% 0.019µs 1 200
credit_card/is_card_number/378282246310005 throughput 14416102.085op/s 14787998.283op/s ± 59315.495op/s 14809942.655op/s ± 10453.174op/s 14817002.140op/s 14824225.082op/s 14826170.288op/s 14830537.560op/s 0.14% -3.497 15.019 0.40% 4194.239op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 44.730µs 45.195µs ± 0.184µs 45.181µs ± 0.110µs 45.310µs 45.443µs 45.535µs 46.211µs 2.28% 1.186 5.797 0.41% 0.013µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 21640088.674op/s 22126700.287op/s ± 89551.736op/s 22133074.017op/s ± 54014.541op/s 22175059.772op/s 22262228.941op/s 22302631.583op/s 22356587.776op/s 1.01% -1.110 5.391 0.40% 6332.264op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.029µs 6.037µs ± 0.008µs 6.036µs ± 0.002µs 6.038µs 6.043µs 6.052µs 6.107µs 1.17% 6.918 58.090 0.13% 0.001µs 1 200
credit_card/is_card_number/x371413321323331 throughput 163748300.383op/s 165641993.130op/s ± 213748.448op/s 165667404.938op/s ± 62578.031op/s 165724179.158op/s 165809879.729op/s 165844083.186op/s 165861964.208op/s 0.12% -6.870 57.527 0.13% 15114.298op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.895µs 3.913µs ± 0.003µs 3.913µs ± 0.002µs 3.915µs 3.918µs 3.922µs 3.923µs 0.25% -0.454 5.819 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 254918805.967op/s 255543821.122op/s ± 203358.024op/s 255562892.270op/s ± 127903.965op/s 255680027.875op/s 255789854.911op/s 255868074.865op/s 256762801.700op/s 0.47% 0.472 5.914 0.08% 14379.584op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 65.091µs 65.757µs ± 0.149µs 65.797µs ± 0.054µs 65.845µs 65.905µs 65.940µs 65.973µs 0.27% -2.021 4.429 0.23% 0.011µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15157628.939op/s 15207488.207op/s ± 34566.495op/s 15198284.721op/s ± 12443.204op/s 15214753.638op/s 15286854.375op/s 15324335.468op/s 15362997.508op/s 1.08% 2.037 4.502 0.23% 2444.220op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 52.963µs 53.013µs ± 0.028µs 53.010µs ± 0.016µs 53.027µs 53.071µs 53.094µs 53.119µs 0.21% 1.035 1.424 0.05% 0.002µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 18825739.986op/s 18863201.164op/s ± 9981.664op/s 18864509.256op/s ± 5759.761op/s 18869776.750op/s 18876870.832op/s 18879311.088op/s 18881132.085op/s 0.09% -1.032 1.414 0.05% 705.810op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.896µs 3.912µs ± 0.003µs 3.912µs ± 0.001µs 3.914µs 3.917µs 3.920µs 3.924µs 0.31% 0.090 6.408 0.07% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254833286.509op/s 255592959.992op/s ± 188525.569op/s 255621536.970op/s ± 89925.618op/s 255709927.938op/s 255810841.567op/s 255854462.610op/s 256675546.751op/s 0.41% -0.071 6.468 0.07% 13330.771op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 49.747µs 49.823µs ± 0.038µs 49.825µs ± 0.025µs 49.847µs 49.875µs 49.919µs 49.993µs 0.34% 0.669 1.673 0.08% 0.003µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 20002903.904op/s 20071176.472op/s ± 15173.858op/s 20070172.714op/s ± 10193.531op/s 20082212.683op/s 20094783.495op/s 20098106.478op/s 20101610.139op/s 0.16% -0.662 1.646 0.08% 1072.954op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 44.716µs 45.090µs ± 0.136µs 45.089µs ± 0.086µs 45.173µs 45.330µs 45.380µs 45.415µs 0.72% -0.046 -0.109 0.30% 0.010µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 22019283.338op/s 22178250.981op/s ± 67072.342op/s 22178586.575op/s ± 42284.889op/s 22222996.361op/s 22287569.273op/s 22326129.959op/s 22363170.638op/s 0.83% 0.064 -0.105 0.30% 4742.731op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.026µs 6.035µs ± 0.006µs 6.034µs ± 0.002µs 6.037µs 6.041µs 6.043µs 6.109µs 1.24% 8.827 103.615 0.10% 0.000µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 163685861.839op/s 165698472.507op/s ± 167593.803op/s 165715162.938op/s ± 57077.440op/s 165771654.798op/s 165837065.164op/s 165864073.079op/s 165938952.091op/s 0.14% -8.742 102.255 0.10% 11850.671op/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.912µs; 3.913µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/ throughput [255564994.384op/s; 255613540.559op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [77.470µs; 77.600µs] or [-0.083%; +0.083%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12887203.887op/s; 12908542.254op/s] or [-0.083%; +0.083%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [70.834µs; 70.912µs] or [-0.055%; +0.055%] None None None
credit_card/is_card_number/ 378282246310005 throughput [14102221.177op/s; 14117671.806op/s] or [-0.055%; +0.055%] None None None
credit_card/is_card_number/37828224631 execution_time [3.912µs; 3.913µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/37828224631 throughput [255577964.910op/s; 255626658.920op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/378282246310005 execution_time [67.585µs; 67.662µs] or [-0.056%; +0.056%] None None None
credit_card/is_card_number/378282246310005 throughput [14779777.726op/s; 14796218.840op/s] or [-0.056%; +0.056%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [45.170µs; 45.220µs] or [-0.056%; +0.056%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [22114289.278op/s; 22139111.296op/s] or [-0.056%; +0.056%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.036µs; 6.038µs] or [-0.018%; +0.018%] None None None
credit_card/is_card_number/x371413321323331 throughput [165612369.651op/s; 165671616.610op/s] or [-0.018%; +0.018%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.913µs; 3.914µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ throughput [255515637.656op/s; 255572004.588op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [65.737µs; 65.778µs] or [-0.031%; +0.031%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15202697.623op/s; 15212278.791op/s] or [-0.032%; +0.032%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [53.009µs; 53.017µs] or [-0.007%; +0.007%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [18861817.801op/s; 18864584.526op/s] or [-0.007%; +0.007%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.912µs; 3.913µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255566832.162op/s; 255619087.823op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [49.817µs; 49.828µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [20069073.521op/s; 20073279.422op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [45.071µs; 45.109µs] or [-0.042%; +0.042%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [22168955.399op/s; 22187546.562op/s] or [-0.042%; +0.042%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.034µs; 6.036µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [165675245.618op/s; 165721699.396op/s] or [-0.014%; +0.014%] None None None

Group 16

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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.362µs 2.410µs ± 0.014µs 2.408µs ± 0.008µs 2.417µs 2.437µs 2.455µs 2.457µs 2.02% 0.732 1.352 0.60% 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.408µs; 2.412µs] or [-0.083%; +0.083%] None None None

Group 17

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 5.049µs 5.115µs ± 0.045µs 5.114µs ± 0.044µs 5.135µs 5.194µs 5.196µs 5.199µs 1.66% 0.232 -0.988 0.88% 0.003µ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.109µs; 5.121µs] or [-0.123%; +0.123%] None None None

Group 18

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
profile_add_sample2_frames_x1000 execution_time 530.046µs 531.013µs ± 0.580µs 530.908µs ± 0.254µs 531.197µs 531.780µs 533.019µs 535.182µs 0.81% 3.337 18.882 0.11% 0.041µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample2_frames_x1000 execution_time [530.932µs; 531.093µs] or [-0.015%; +0.015%] None None None

Group 19

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 94e8ff9 1770674954 levi/fix-windows-declspec-vars
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 83.804µs 84.165µs ± 0.320µs 84.136µs ± 0.056µs 84.199µs 84.303µs 84.597µs 88.371µs 5.03% 11.465 147.768 0.38% 0.023µ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 [84.121µs; 84.210µs] or [-0.053%; +0.053%] None None None

Baseline

Omitted due to size.

@codecov-commenter
Copy link

codecov-commenter commented Jan 22, 2026

Codecov Report

❌ Patch coverage is 0% with 37 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.73%. Comparing base (e0df0d6) to head (94e8ff9).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1468      +/-   ##
==========================================
- Coverage   71.78%   71.73%   -0.06%     
==========================================
  Files         426      426              
  Lines       70114    70148      +34     
==========================================
- Hits        50334    50319      -15     
- Misses      19780    19829      +49     
Components Coverage Δ
libdd-crashtracker 62.36% <ø> (-0.02%) ⬇️
libdd-crashtracker-ffi 16.80% <ø> (ø)
libdd-alloc 98.73% <ø> (ø)
libdd-data-pipeline 86.86% <ø> (ø)
libdd-data-pipeline-ffi 78.68% <ø> (ø)
libdd-common 80.58% <ø> (ø)
libdd-common-ffi 74.54% <ø> (ø)
libdd-telemetry 65.09% <ø> (ø)
libdd-telemetry-ffi 21.17% <ø> (ø)
libdd-dogstatsd-client 83.75% <ø> (ø)
datadog-ipc 82.60% <ø> (ø)
libdd-profiling 81.83% <ø> (ø)
libdd-profiling-ffi 64.74% <ø> (ø)
datadog-sidecar 35.26% <ø> (ø)
datdog-sidecar-ffi 11.66% <ø> (ø)
spawn-worker 55.18% <ø> (ø)
libdd-tinybytes 93.43% <ø> (ø)
libdd-trace-normalization 82.33% <ø> (ø)
libdd-trace-obfuscation 94.17% <ø> (ø)
libdd-trace-protobuf 61.18% <ø> (ø)
libdd-trace-utils 89.37% <ø> (ø)
datadog-tracer-flare 95.32% <ø> (ø)
libdd-log 75.57% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions bot removed the profiling Relates to the profiling* modules. label Jan 22, 2026
@dd-octo-sts
Copy link

dd-octo-sts bot commented Jan 26, 2026

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 91.69 MB 91.69 MB 0% (0 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 8.38 MB 8.38 MB 0% (0 B) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 106.40 MB 106.40 MB 0% (0 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.76 MB 10.76 MB 0% (0 B) 👌
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 25.08 MB 25.08 MB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 75.94 KB 75.94 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 172.52 MB 172.53 MB +0% (+8.00 KB) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 882.83 MB 882.83 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 9.57 MB 9.57 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 75.94 KB 75.94 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 23.04 MB 23.04 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 48.45 MB 48.45 MB 0% (0 B) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 21.22 MB 21.22 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 77.12 KB 77.12 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 176.62 MB 176.63 MB +0% (+8.00 KB) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 866.92 MB 866.92 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 7.24 MB 7.24 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 77.12 KB 77.12 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 24.62 MB 24.62 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 44.15 MB 44.15 MB 0% (0 B) 👌
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 80.18 MB 80.18 MB 0% (0 B) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 9.88 MB 9.88 MB 0% (0 B) 👌
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 100.31 MB 100.31 MB 0% (0 B) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 11.44 MB 11.44 MB 0% (0 B) 👌

@gleocadie gleocadie force-pushed the levi/fix-windows-declspec-vars branch from 0802540 to d844b01 Compare January 29, 2026 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working ci-build common

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants