Skip to content
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

[APMSP-1765] Extract retry logic from SendData #852

Merged
merged 6 commits into from
Feb 10, 2025

Conversation

VianneyRuhlmann
Copy link
Contributor

@VianneyRuhlmann VianneyRuhlmann commented Feb 4, 2025

What does this PR do?

This PR extract the retry logic from SendData::send_payload to a separate module to be reused in data-pipeline without the ownership constraints of SendData.

Motivation

The data-pipeline trace_payload is received as a reference to tracer memory which means it shouldn't be considered as static or owned.

Additional Notes

  • SendData::create_request_builder has been removed to use Endpoint request builder
  • Endpoint::into_request_builder was renamed to to_request_builder to match naming conventions on ownership
  • Some headers previously added in send_payload have been moved to send_with_protobuf and send_with_msgpack

How to test the change?

Existing tests still pass showing no changes in SendData behavior.

@VianneyRuhlmann VianneyRuhlmann changed the title Rename into_request_builder to match naming convention Extract retry logic from SendData Feb 4, 2025
@VianneyRuhlmann VianneyRuhlmann changed the title Extract retry logic from SendData [APMSP-1765] Extract retry logic from SendData Feb 4, 2025
@codecov-commenter
Copy link

codecov-commenter commented Feb 4, 2025

Codecov Report

Attention: Patch coverage is 89.10615% with 39 lines in your changes missing coverage. Please review.

Project coverage is 71.93%. Comparing base (a85f773) to head (87d4027).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #852      +/-   ##
==========================================
- Coverage   71.98%   71.93%   -0.06%     
==========================================
  Files         323      324       +1     
  Lines       48086    48052      -34     
==========================================
- Hits        34614    34564      -50     
- Misses      13472    13488      +16     
Components Coverage Δ
crashtracker 43.22% <ø> (-0.06%) ⬇️
crashtracker-ffi 6.30% <ø> (ø)
datadog-alloc 98.73% <ø> (ø)
data-pipeline 92.37% <100.00%> (ø)
data-pipeline-ffi 91.43% <ø> (ø)
ddcommon 80.08% <100.00%> (ø)
ddcommon-ffi 61.05% <ø> (ø)
ddtelemetry 61.74% <100.00%> (ø)
ddtelemetry-ffi 22.46% <ø> (ø)
dogstatsd 90.01% <ø> (ø)
dogstatsd-client 79.77% <ø> (ø)
ipc 82.68% <ø> (ø)
profiling 80.04% <100.00%> (ø)
profiling-ffi 70.68% <ø> (ø)
serverless 0.00% <ø> (ø)
sidecar 41.50% <ø> (ø)
sidecar-ffi 9.26% <ø> (ø)
spawn-worker 54.37% <ø> (ø)
tinybytes 92.79% <ø> (ø)
trace-mini-agent 72.48% <ø> (ø)
trace-normalization 98.23% <ø> (ø)
trace-obfuscation 95.96% <ø> (ø)
trace-protobuf 77.67% <ø> (ø)
trace-utils 93.56% <89.17%> (-0.66%) ⬇️

@pr-commenter
Copy link

pr-commenter bot commented Feb 4, 2025

Benchmarks

Comparison

Benchmark execution time: 2025-02-10 10:25:42

Comparing candidate commit 87d4027 in PR branch vianney/send-with-retry with baseline commit a85f773 in branch main.

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

scenario:redis/obfuscate_redis_string

  • 🟥 execution_time [+1.916µs; +2.291µs] or [+4.827%; +5.770%]

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 87d4027 1739182554 vianney/send-with-retry
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 76.596µs 76.779µs ± 0.148µs 76.763µs ± 0.047µs 76.807µs 76.943µs 77.138µs 78.356µs 2.08% 6.889 65.871 0.19% 0.010µ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 [76.758µs; 76.799µs] or [-0.027%; +0.027%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 210.185µs 216.099µs ± 2.680µs 215.964µs ± 1.960µs 217.921µs 220.209µs 222.757µs 224.032µs 3.74% 0.216 -0.206 1.24% 0.190µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 4463657.728op/s 4628213.790op/s ± 57277.071op/s 4630394.626op/s ± 41653.647op/s 4671109.977op/s 4714679.459op/s 4749066.466op/s 4757706.329op/s 2.75% -0.152 -0.267 1.23% 4050.101op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 20.408µs 20.848µs ± 0.209µs 20.824µs ± 0.147µs 20.973µs 21.208µs 21.332µs 21.358µs 2.56% 0.204 -0.551 1.00% 0.015µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 46821683.081op/s 47971633.697op/s ± 480419.880op/s 48021212.849op/s ± 336789.031op/s 48331934.178op/s 48742659.895op/s 48873875.982op/s 49000600.790op/s 2.04% -0.162 -0.576 1.00% 33970.816op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 13.266µs 13.435µs ± 0.066µs 13.429µs ± 0.046µs 13.478µs 13.555µs 13.578µs 13.654µs 1.67% 0.296 -0.034 0.49% 0.005µs 1 200
normalization/normalize_name/normalize_name/good throughput 73240952.853op/s 74432428.303op/s ± 364185.415op/s 74465818.644op/s ± 256874.848op/s 74700166.190op/s 74965699.028op/s 75176236.372op/s 75381799.842op/s 1.23% -0.268 -0.058 0.49% 25751.798op/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.728µs; 216.471µs] or [-0.172%; +0.172%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [4620275.739op/s; 4636151.842op/s] or [-0.172%; +0.172%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [20.819µs; 20.877µs] or [-0.139%; +0.139%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [47905052.122op/s; 48038215.272op/s] or [-0.139%; +0.139%] None None None
normalization/normalize_name/normalize_name/good execution_time [13.426µs; 13.444µs] or [-0.068%; +0.068%] None None None
normalization/normalize_name/normalize_name/good throughput [74381955.707op/s; 74482900.899op/s] or [-0.068%; +0.068%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 41.098µs 41.800µs ± 1.209µs 41.252µs ± 0.041µs 41.306µs 44.440µs 44.472µs 44.531µs 7.95% 1.702 0.913 2.89% 0.086µ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 [41.632µs; 41.968µs] or [-0.401%; +0.401%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 144.591µs 145.377µs ± 0.321µs 145.334µs ± 0.146µs 145.498µs 145.888µs 146.148µs 147.988µs 1.83% 2.971 20.925 0.22% 0.023µ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 [145.332µs; 145.421µs] or [-0.031%; +0.031%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 57.906ms 58.127ms ± 0.124ms 58.108ms ± 0.079ms 58.201ms 58.331ms 58.521ms 58.635ms 0.91% 0.896 1.485 0.21% 0.009ms 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 [58.110ms; 58.144ms] or [-0.030%; +0.030%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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.662µs 2.729µs ± 0.021µs 2.729µs ± 0.010µs 2.739µs 2.770µs 2.783µs 2.787µs 2.10% -0.168 1.840 0.77% 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.726µs; 2.732µs] or [-0.106%; +0.106%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 261.673ns 273.682ns ± 15.699ns 266.650ns ± 3.316ns 276.464ns 308.728ns 326.354ns 328.746ns 23.29% 1.939 2.958 5.72% 1.110ns 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 [271.506ns; 275.858ns] or [-0.795%; +0.795%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 427.701µs 429.720µs ± 1.659µs 429.446µs ± 0.425µs 429.837µs 433.857µs 436.325µs 439.876µs 2.43% 3.235 12.654 0.39% 0.117µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 2273366.399op/s 2327130.360op/s ± 8876.247op/s 2328581.746op/s ± 2303.257op/s 2331305.972op/s 2335212.013op/s 2337011.141op/s 2338082.524op/s 0.41% -3.187 12.277 0.38% 627.645op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 469.888µs 470.723µs ± 0.352µs 470.721µs ± 0.222µs 470.941µs 471.245µs 471.738µs 471.850µs 0.24% 0.320 0.557 0.07% 0.025µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2119316.398op/s 2124393.174op/s ± 1588.433op/s 2124399.822op/s ± 1002.024op/s 2125411.113op/s 2127017.182op/s 2127693.771op/s 2128167.189op/s 0.18% -0.315 0.550 0.07% 112.319op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 161.380µs 162.026µs ± 0.234µs 162.050µs ± 0.128µs 162.150µs 162.340µs 162.504µs 163.542µs 0.92% 1.007 7.827 0.14% 0.017µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 6114629.571op/s 6171857.769op/s ± 8906.467op/s 6170940.090op/s ± 4884.670op/s 6177219.804op/s 6186913.914op/s 6191012.656op/s 6196558.206op/s 0.42% -0.969 7.579 0.14% 629.782op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 45.613µs 45.809µs ± 0.066µs 45.815µs ± 0.048µs 45.855µs 45.904µs 45.936µs 45.977µs 0.35% -0.302 -0.039 0.14% 0.005µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 21749953.595op/s 21829974.571op/s ± 31662.588op/s 21826733.118op/s ± 22706.809op/s 21853388.907op/s 21884715.769op/s 21915988.303op/s 21923650.138op/s 0.44% 0.310 -0.031 0.14% 2238.883op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 43.031µs 43.198µs ± 0.059µs 43.204µs ± 0.040µs 43.242µs 43.278µs 43.297µs 43.381µs 0.41% -0.425 0.151 0.14% 0.004µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 23051804.368op/s 23149013.401op/s ± 31635.904op/s 23146016.175op/s ± 21413.037op/s 23168657.874op/s 23204374.500op/s 23230918.727op/s 23238913.949op/s 0.40% 0.433 0.156 0.14% 2236.996op/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 [429.490µs; 429.950µs] or [-0.054%; +0.054%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [2325900.198op/s; 2328360.523op/s] or [-0.053%; +0.053%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [470.674µs; 470.772µs] or [-0.010%; +0.010%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2124173.032op/s; 2124613.316op/s] or [-0.010%; +0.010%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [161.994µs; 162.059µs] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [6170623.419op/s; 6173092.120op/s] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [45.799µs; 45.818µs] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [21825586.441op/s; 21834362.701op/s] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [43.190µs; 43.207µs] or [-0.019%; +0.019%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [23144628.968op/s; 23153397.833op/s] or [-0.019%; +0.019%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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.400µs 5.468µs ± 0.045µs 5.454µs ± 0.029µs 5.514µs 5.549µs 5.552µs 5.553µs 1.83% 0.529 -1.043 0.82% 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.462µs; 5.475µs] or [-0.114%; +0.114%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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.395µs 3.351µs ± 1.492µs 3.149µs ± 0.027µs 3.174µs 3.793µs 14.573µs 15.567µs 394.28% 7.431 55.965 44.41% 0.106µ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.145µs; 3.558µs] or [-6.170%; +6.170%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 4.271µs 4.287µs ± 0.005µs 4.287µs ± 0.001µs 4.288µs 4.290µs 4.293µs 4.347µs 1.41% 9.194 114.376 0.11% 0.000µs 1 200
credit_card/is_card_number/ throughput 230044003.188op/s 233281834.164op/s ± 263599.643op/s 233289338.678op/s ± 61550.811op/s 233353968.941op/s 233485345.424op/s 233672016.210op/s 234162349.685op/s 0.37% -9.085 112.783 0.11% 18639.310op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 96.319µs 97.990µs ± 0.837µs 97.898µs ± 0.524µs 98.464µs 99.320µs 99.857µs 103.398µs 5.62% 1.645 7.762 0.85% 0.059µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 9671403.276op/s 10205884.852op/s ± 86026.196op/s 10214663.645op/s ± 54928.507op/s 10262866.750op/s 10324322.454op/s 10345832.270op/s 10382138.287op/s 1.64% -1.475 6.518 0.84% 6082.971op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 91.428µs 93.143µs ± 0.670µs 93.213µs ± 0.363µs 93.536µs 93.711µs 93.862µs 99.364µs 6.60% 3.577 35.637 0.72% 0.047µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 10063991.142op/s 10736681.106op/s ± 75457.714op/s 10728067.770op/s ± 41590.216op/s 10776567.706op/s 10844155.289op/s 10910582.346op/s 10937516.299op/s 1.95% -3.071 30.213 0.70% 5335.666op/s 1 200
credit_card/is_card_number/37828224631 execution_time 4.265µs 4.286µs ± 0.005µs 4.286µs ± 0.001µs 4.287µs 4.289µs 4.291µs 4.340µs 1.27% 7.419 91.096 0.11% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 230412517.382op/s 233325948.909op/s ± 251933.183op/s 233333698.230op/s ± 74715.359op/s 233408980.420op/s 233551812.186op/s 233688017.930op/s 234457214.471op/s 0.48% -7.296 89.556 0.11% 17814.366op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 83.377µs 84.523µs ± 0.618µs 84.536µs ± 0.576µs 85.103µs 85.339µs 85.484µs 85.571µs 1.22% -0.059 -1.531 0.73% 0.044µs 1 200
credit_card/is_card_number/378282246310005 throughput 11686179.149op/s 11831790.474op/s ± 86553.414op/s 11829245.817op/s ± 80206.092op/s 11911424.271op/s 11952375.812op/s 11976595.296op/s 11993739.470op/s 1.39% 0.069 -1.528 0.73% 6120.251op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 58.966µs 59.080µs ± 0.116µs 59.069µs ± 0.018µs 59.089µs 59.128µs 59.190µs 60.195µs 1.91% 8.725 80.743 0.20% 0.008µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 16612625.146op/s 16926172.207op/s ± 32616.278op/s 16929408.599op/s ± 5140.365op/s 16933632.016op/s 16945835.439op/s 16953595.703op/s 16958928.866op/s 0.17% -8.686 80.259 0.19% 2306.319op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.831µs 6.843µs ± 0.004µs 6.843µs ± 0.002µs 6.845µs 6.849µs 6.855µs 6.865µs 0.33% 0.768 4.464 0.06% 0.000µs 1 200
credit_card/is_card_number/x371413321323331 throughput 145661213.737op/s 146130018.496op/s ± 88538.464op/s 146136299.187op/s ± 41353.222op/s 146170835.272op/s 146271257.514op/s 146364674.457op/s 146384986.708op/s 0.17% -0.757 4.427 0.06% 6260.615op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 4.269µs 4.287µs ± 0.003µs 4.287µs ± 0.001µs 4.289µs 4.291µs 4.294µs 4.295µs 0.19% -1.293 10.687 0.06% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 232828197.230op/s 233254907.338op/s ± 144111.418op/s 233269240.927op/s ± 73485.140op/s 233320256.970op/s 233432312.868op/s 233559586.829op/s 234251645.282op/s 0.42% 1.314 10.829 0.06% 10190.216op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 75.715µs 76.284µs ± 0.208µs 76.285µs ± 0.127µs 76.419µs 76.625µs 76.716µs 76.894µs 0.80% -0.096 0.034 0.27% 0.015µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 13004903.045op/s 13109029.186op/s ± 35756.925op/s 13108742.832op/s ± 21884.122op/s 13129599.420op/s 13170232.181op/s 13186961.987op/s 13207410.678op/s 0.75% 0.113 0.034 0.27% 2528.396op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 65.899µs 66.293µs ± 0.142µs 66.296µs ± 0.095µs 66.386µs 66.533µs 66.625µs 66.707µs 0.62% 0.068 0.041 0.21% 0.010µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 14990830.774op/s 15084630.256op/s ± 32309.709op/s 15083781.918op/s ± 21542.718op/s 15107186.867op/s 15134341.918op/s 15156092.701op/s 15174679.148op/s 0.60% -0.054 0.035 0.21% 2284.641op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 4.268µs 4.285µs ± 0.003µs 4.285µs ± 0.001µs 4.286µs 4.289µs 4.291µs 4.292µs 0.15% -1.575 8.913 0.06% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 233004777.297op/s 233365568.756op/s ± 141865.776op/s 233357645.588op/s ± 59903.054op/s 233421299.695op/s 233581313.297op/s 233748362.443op/s 234295900.665op/s 0.40% 1.590 9.016 0.06% 10031.425op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 62.604µs 62.990µs ± 0.195µs 62.996µs ± 0.139µs 63.099µs 63.318µs 63.433µs 63.582µs 0.93% 0.336 -0.293 0.31% 0.014µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 15727717.015op/s 15875659.034op/s ± 49043.808op/s 15874062.576op/s ± 35187.074op/s 15914329.660op/s 15948696.875op/s 15968262.887op/s 15973418.624op/s 0.63% -0.321 -0.313 0.31% 3467.921op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 58.973µs 59.076µs ± 0.031µs 59.076µs ± 0.015µs 59.090µs 59.122µs 59.155µs 59.238µs 0.27% 0.598 4.105 0.05% 0.002µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 16881052.726op/s 16927303.356op/s ± 8761.326op/s 16927325.912op/s ± 4336.513op/s 16931823.589op/s 16939519.563op/s 16950244.760op/s 16956775.484op/s 0.17% -0.589 4.076 0.05% 619.519op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.832µs 6.843µs ± 0.004µs 6.843µs ± 0.002µs 6.845µs 6.848µs 6.851µs 6.876µs 0.49% 3.073 25.734 0.06% 0.000µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 145425782.221op/s 146128748.951op/s ± 82402.733op/s 146134677.800op/s ± 41897.404op/s 146176001.555op/s 146226179.604op/s 146301759.327op/s 146366931.485op/s 0.16% -3.042 25.420 0.06% 5826.753op/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 [4.286µs; 4.287µs] or [-0.016%; +0.016%] None None None
credit_card/is_card_number/ throughput [233245301.789op/s; 233318366.539op/s] or [-0.016%; +0.016%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [97.874µs; 98.106µs] or [-0.118%; +0.118%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [10193962.449op/s; 10217807.256op/s] or [-0.117%; +0.117%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [93.050µs; 93.236µs] or [-0.100%; +0.100%] None None None
credit_card/is_card_number/ 378282246310005 throughput [10726223.393op/s; 10747138.820op/s] or [-0.097%; +0.097%] None None None
credit_card/is_card_number/37828224631 execution_time [4.285µs; 4.287µs] or [-0.015%; +0.015%] None None None
credit_card/is_card_number/37828224631 throughput [233291033.393op/s; 233360864.425op/s] or [-0.015%; +0.015%] None None None
credit_card/is_card_number/378282246310005 execution_time [84.437µs; 84.608µs] or [-0.101%; +0.101%] None None None
credit_card/is_card_number/378282246310005 throughput [11819795.004op/s; 11843785.945op/s] or [-0.101%; +0.101%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [59.064µs; 59.096µs] or [-0.027%; +0.027%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [16921651.905op/s; 16930692.510op/s] or [-0.027%; +0.027%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.843µs; 6.844µs] or [-0.008%; +0.008%] None None None
credit_card/is_card_number/x371413321323331 throughput [146117747.917op/s; 146142289.076op/s] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/ execution_time [4.287µs; 4.288µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ throughput [233234934.882op/s; 233274879.795op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [76.255µs; 76.313µs] or [-0.038%; +0.038%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [13104073.620op/s; 13113984.752op/s] or [-0.038%; +0.038%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [66.273µs; 66.313µs] or [-0.030%; +0.030%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [15080152.441op/s; 15089108.070op/s] or [-0.030%; +0.030%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [4.285µs; 4.285µs] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [233345907.524op/s; 233385229.989op/s] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [62.963µs; 63.017µs] or [-0.043%; +0.043%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [15868862.034op/s; 15882456.034op/s] or [-0.043%; +0.043%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [59.072µs; 59.080µs] or [-0.007%; +0.007%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [16926089.121op/s; 16928517.592op/s] or [-0.007%; +0.007%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.843µs; 6.844µs] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [146117328.725op/s; 146140169.178op/s] or [-0.008%; +0.008%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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.860µs 28.398µs ± 14.119µs 19.196µs ± 0.278µs 36.529µs 46.345µs 54.162µs 150.890µs 686.04% 4.031 29.256 49.59% 0.998µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [26.441µs; 30.354µs] or [-6.891%; +6.891%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 87d4027 1739182554 vianney/send-with-retry
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 6.237ms 6.252ms ± 0.007ms 6.251ms ± 0.003ms 6.254ms 6.259ms 6.269ms 6.318ms 1.07% 4.572 36.260 0.12% 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 [6.251ms; 6.253ms] or [-0.016%; +0.016%] None None None

Baseline

Omitted due to size.

@VianneyRuhlmann VianneyRuhlmann force-pushed the vianney/send-with-retry branch 2 times, most recently from 5a04f3e to 619bb76 Compare February 4, 2025 17:11
@VianneyRuhlmann VianneyRuhlmann force-pushed the vianney/send-with-retry branch from 619bb76 to 03b5db7 Compare February 4, 2025 17:30
@VianneyRuhlmann VianneyRuhlmann marked this pull request as ready for review February 5, 2025 09:09
@VianneyRuhlmann VianneyRuhlmann requested review from a team as code owners February 5, 2025 09:09
@VianneyRuhlmann VianneyRuhlmann enabled auto-merge (squash) February 10, 2025 10:16
@VianneyRuhlmann VianneyRuhlmann merged commit b3b2852 into main Feb 10, 2025
41 checks passed
@VianneyRuhlmann VianneyRuhlmann deleted the vianney/send-with-retry branch February 10, 2025 10:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants