Skip to content

Conversation

@ctz
Copy link
Member

@ctz ctz commented Sep 26, 2024

The signed message has a pretty tight upper bound, so we can avoid a Vec allocation here.

@rustls-benchmarking
Copy link

rustls-benchmarking bot commented Sep 26, 2024

Benchmark results

Instruction counts

Significant differences

There are no significant instruction count differences

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_server 10775291 10839107 63816 (0.59%) 1.00%
handshake_no_resume_ring_1.3_ecdsap256_chacha_server 1672984 1667457 -5527 (-0.33%) 0.86%
handshake_no_resume_ring_1.3_ecdsap256_chacha_client 3639743 3628875 -10868 (-0.30%) 0.45%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 8600944 8580838 -20106 (-0.23%) 1.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_server 10418405 10442471 24066 (0.23%) 0.68%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 3096942 3090673 -6269 (-0.20%) 0.21%
handshake_no_resume_ring_1.3_ecdsap256_aes_client 3633950 3627344 -6606 (-0.18%) 0.42%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 3094932 3090230 -4702 (-0.15%) 0.25%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 1284964 1283594 -1370 (-0.11%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 1282678 1281407 -1271 (-0.10%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 8598721 8590495 -8226 (-0.10%) 0.96%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_server 10782899 10775205 -7694 (-0.07%) 1.02%
handshake_no_resume_ring_1.3_ecdsap256_aes_server 1667234 1666053 -1181 (-0.07%) 0.83%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_client 1933719 1932528 -1191 (-0.06%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_client 1926991 1925807 -1184 (-0.06%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 2172039 2170827 -1212 (-0.06%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 2169026 2167838 -1188 (-0.05%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_client 2657243 2656077 -1166 (-0.04%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_client 2663086 2661920 -1166 (-0.04%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_server 7612462 7611278 -1184 (-0.02%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_server 7614615 7613434 -1181 (-0.02%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_client 58245034 58252761 7727 (0.01%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_client 35185093 35180687 -4406 (-0.01%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_client 35187001 35182610 -4391 (-0.01%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_server 11476628 11475447 -1181 (-0.01%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_server 11482583 11481402 -1181 (-0.01%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 58256078 58250300 -5778 (-0.01%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 58243344 58239985 -3359 (-0.01%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_client 58331921 58328559 -3362 (-0.01%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_client 58334576 58331223 -3353 (-0.01%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_client 3907851 3907701 -150 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_client 92666744 92663392 -3352 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_client 92665992 92662642 -3350 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 92704776 92701433 -3343 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 92714408 92711103 -3305 (-0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_client 4254329 4254179 -150 (-0.00%) 0.20%
handshake_session_id_ring_1.2_rsa_aes_client 4270372 4270222 -150 (-0.00%) 0.20%
handshake_tickets_ring_1.2_rsa_aes_client 4535361 4535211 -150 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_server 46441630 46440351 -1279 (-0.00%) 0.34%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_client 30747649 30747322 -327 (-0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_server 34126913 34127204 291 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_server 32114196 32114424 228 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_server 32057903 32058128 225 (0.00%) 0.58%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_client 30724714 30724501 -213 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_client 30359257 30359053 -204 (-0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_client 30758978 30758802 -176 (-0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_server 43856836 43857072 236 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_server 43950346 43950582 236 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_client 30308677 30308535 -142 (-0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_server 34124364 34124207 -157 (-0.00%) 0.61%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_client 30759225 30759089 -136 (-0.00%) 0.56%
handshake_session_id_ring_1.3_ecdsap256_chacha_server 43182653 43182839 186 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_server 43293203 43293389 186 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_server 32114024 32114156 132 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_client 42182848 42182696 -152 (-0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_client 42256642 42256490 -152 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_client 30344701 30344598 -103 (-0.00%) 0.57%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_client 30781746 30781643 -103 (-0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_server 34121060 34121163 103 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_server 43179820 43179944 124 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_server 43290370 43290494 124 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_server 43182783 43182903 120 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_server 43293333 43293453 120 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_server 43856989 43856875 -114 (-0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_server 43950499 43950385 -114 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_server 32061157 32061237 80 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_server 32061079 32061156 77 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_client 42168986 42168891 -95 (-0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_client 42242696 42242601 -95 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_client 30323207 30323139 -68 (-0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_client 42168480 42168387 -93 (-0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_client 42242274 42242181 -93 (-0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_client 41720042 41719952 -90 (-0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_client 41808752 41808662 -90 (-0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_client 2563606 2563601 -5 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_client 30344745 30344803 58 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_server 43853649 43853718 69 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_server 43947159 43947228 69 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_client 41706324 41706272 -52 (-0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_client 41795034 41794982 -52 (-0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_client 1717574 1717576 2 (0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_server 34118227 34118193 -34 (-0.00%) 0.46%
handshake_session_id_ring_1.3_ecdsap256_chacha_client 41705783 41705743 -40 (-0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_client 41794493 41794453 -40 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_client 30308714 30308742 28 (0.00%) 0.38%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_server 34127093 34127123 30 (0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_server 34121149 34121165 16 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_server 32110965 32110979 14 (0.00%) 0.49%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_client 30724959 30724952 -7 (-0.00%) 0.41%
transfer_no_resume_ring_1.3_ecdsap256_aes_server 46477875 46477884 9 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 46488073 46488064 -9 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_server 46485255 46485248 -7 (-0.00%) 0.24%
transfer_no_resume_ring_1.3_rsa_aes_client 58340338 58340330 -8 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_client 92672498 92672487 -11 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_server 80561375 80561366 -9 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_server 80668290 80668284 -6 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 46462871 46462874 3 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_server 46492901 46492903 2 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_client 92715486 92715483 -3 (-0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_server 46396516 46396515 -1 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_server 46476811 46476810 -1 (-0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_client 58223756 58223755 -1 (-0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_server 80544650 80544649 -1 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 80644638 80644637 -1 (-0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 80669830 80669829 -1 (-0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_server 11291853 11291853 0 (0.00%) 0.20%
handshake_session_id_ring_1.2_rsa_aes_server 4239160 4239160 0 (0.00%) 0.20%
handshake_tickets_ring_1.2_rsa_aes_server 4679097 4679097 0 (0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_server 3879393 3879393 0 (0.00%) 3.72%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_client 68671582 68671582 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_server 80546357 80546357 0 (0.00%) 0.20%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_server 4999114 4999114 0 (0.00%) 4.41%

Wall-time

Significant differences

There are no significant wall-time differences

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha 4.91 ms 4.97 ms 0.06 ms (1.22%) 2.57%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes 4.90 ms 4.95 ms 0.06 ms (1.14%) 2.65%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha 5.61 ms 5.68 ms 0.06 ms (1.14%) 1.94%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha 4.56 ms 4.61 ms 0.05 ms (1.10%) 2.23%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha 5.85 ms 5.91 ms 0.06 ms (1.07%) 2.35%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes 5.62 ms 5.67 ms 0.06 ms (0.98%) 2.02%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha 5.27 ms 5.32 ms 0.05 ms (0.95%) 1.85%
handshake_tickets_aws_lc_rs_1.3_rsa_aes 5.85 ms 5.90 ms 0.05 ms (0.94%) 2.29%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes 4.58 ms 4.62 ms 0.04 ms (0.93%) 2.43%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha 5.51 ms 5.55 ms 0.05 ms (0.89%) 2.28%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes 5.29 ms 5.34 ms 0.05 ms (0.87%) 1.94%
handshake_session_id_aws_lc_rs_1.3_rsa_aes 5.53 ms 5.57 ms 0.04 ms (0.71%) 2.71%
handshake_tickets_ring_1.3_ecdsap256_aes 6.67 ms 6.72 ms 0.05 ms (0.68%) 1.24%
handshake_tickets_ring_1.3_rsa_aes 7.15 ms 7.20 ms 0.04 ms (0.59%) 1.22%
handshake_tickets_ring_1.3_rsa_chacha 7.10 ms 7.14 ms 0.04 ms (0.52%) 1.42%
handshake_tickets_ring_1.3_ecdsap256_chacha 6.62 ms 6.65 ms 0.03 ms (0.50%) 1.33%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes 5.49 ms 5.46 ms -0.03 ms (-0.50%) 5.25%
handshake_session_id_ring_1.3_ecdsap256_aes 6.55 ms 6.59 ms 0.03 ms (0.50%) 1.75%
handshake_session_id_ring_1.3_rsa_aes 7.04 ms 7.07 ms 0.03 ms (0.48%) 1.35%
handshake_session_id_ring_1.3_ecdsap256_chacha 6.51 ms 6.54 ms 0.03 ms (0.43%) 1.44%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes 5.47 ms 5.45 ms -0.02 ms (-0.42%) 5.38%
handshake_tickets_ring_1.3_ecdsap384_aes 9.76 ms 9.80 ms 0.04 ms (0.39%) 1.00%
handshake_session_id_ring_1.3_rsa_chacha 6.99 ms 7.02 ms 0.03 ms (0.36%) 1.06%
handshake_no_resume_ring_1.3_ecdsap384_chacha 3.60 ms 3.59 ms -0.01 ms (-0.33%) 1.00%
handshake_session_id_ring_1.3_ecdsap384_aes 9.64 ms 9.67 ms 0.03 ms (0.32%) 1.14%
transfer_no_resume_ring_1.3_rsa_aes 6.86 ms 6.84 ms -0.02 ms (-0.32%) 3.75%
handshake_tickets_ring_1.3_ecdsap384_chacha 9.71 ms 9.74 ms 0.03 ms (0.32%) 1.00%
handshake_session_id_ring_1.2_rsa_aes 1.52 ms 1.52 ms -0.00 ms (-0.31%) 1.84%
handshake_tickets_aws_lc_rs_1.2_rsa_aes 2.07 ms 2.06 ms -0.01 ms (-0.31%) 2.00%
transfer_no_resume_ring_1.2_rsa_aes 6.78 ms 6.76 ms -0.02 ms (-0.29%) 3.34%
handshake_session_id_ring_1.3_ecdsap384_chacha 9.59 ms 9.62 ms 0.03 ms (0.27%) 1.00%
handshake_no_resume_ring_1.3_ecdsap256_aes 504.74 µs 503.40 µs -1.35 µs (-0.27%) 2.74%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes 4.52 ms 4.51 ms -0.01 ms (-0.26%) 4.99%
transfer_no_resume_ring_1.3_ecdsap256_aes 6.38 ms 6.36 ms -0.02 ms (-0.25%) 4.15%
transfer_no_resume_ring_1.3_ecdsap384_aes 9.47 ms 9.45 ms -0.02 ms (-0.24%) 2.70%
handshake_no_resume_ring_1.3_ecdsap256_chacha 501.63 µs 500.44 µs -1.19 µs (-0.24%) 2.60%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes 458.99 µs 459.95 µs 0.95 µs (0.21%) 2.75%
handshake_no_resume_ring_1.3_ecdsap384_aes 3.60 ms 3.59 ms -0.01 ms (-0.20%) 1.00%
handshake_session_id_aws_lc_rs_1.2_rsa_aes 1.90 ms 1.90 ms -0.00 ms (-0.19%) 2.51%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha 13.94 ms 13.91 ms -0.03 ms (-0.19%) 1.96%
handshake_no_resume_ring_1.2_rsa_aes 978.15 µs 979.90 µs 1.75 µs (0.18%) 1.25%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 13.00 ms 12.98 ms -0.02 ms (-0.17%) 1.83%
transfer_no_resume_ring_1.3_rsa_chacha 13.50 ms 13.48 ms -0.02 ms (-0.17%) 1.91%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes 1.17 ms 1.17 ms 0.00 ms (0.17%) 1.33%
transfer_no_resume_ring_1.3_ecdsap384_chacha 16.12 ms 16.09 ms -0.02 ms (-0.15%) 1.78%
transfer_no_resume_ring_1.3_ecdsap256_chacha 13.02 ms 13.00 ms -0.02 ms (-0.15%) 1.84%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 1.17 ms 1.18 ms 0.00 ms (0.11%) 1.66%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 13.72 ms 13.70 ms -0.01 ms (-0.11%) 1.90%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes 5.24 ms 5.23 ms -0.01 ms (-0.10%) 4.61%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 457.76 µs 457.33 µs -0.43 µs (-0.09%) 3.42%
handshake_no_resume_ring_1.3_rsa_aes 984.53 µs 985.09 µs 0.56 µs (0.06%) 1.08%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes 1.35 ms 1.35 ms 0.00 ms (0.06%) 2.24%
handshake_tickets_ring_1.2_rsa_aes 1.60 ms 1.60 ms -0.00 ms (-0.05%) 1.95%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes 1.39 ms 1.39 ms -0.00 ms (-0.03%) 2.10%
handshake_no_resume_ring_1.3_rsa_chacha 984.44 µs 984.37 µs -0.07 µs (-0.01%) 1.00%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha 1.38 ms 1.38 ms 0.00 ms (0.01%) 2.97%

Additional information

Historical results

Checkout details:

@codecov
Copy link

codecov bot commented Sep 26, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 94.64%. Comparing base (659e876) to head (ad55d0b).
Report is 20 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2135   +/-   ##
=======================================
  Coverage   94.63%   94.64%           
=======================================
  Files         102      102           
  Lines       23412    23416    +4     
=======================================
+ Hits        22157    22161    +4     
  Misses       1255     1255           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

The signed message has a pretty tight upper bound,
so we can avoid a Vec allocation here.
@ctz ctz force-pushed the jbp-vec-verify-msg branch from 2cb5643 to ad55d0b Compare September 26, 2024 13:49
@ctz ctz enabled auto-merge September 26, 2024 13:49
@ctz ctz added this pull request to the merge queue Sep 26, 2024
Merged via the queue into main with commit 211eabf Sep 26, 2024
60 checks passed
@ctz ctz deleted the jbp-vec-verify-msg branch September 26, 2024 14:34
@ctz ctz added the performance_enhancement Pull requests that should improve performance label Oct 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

performance_enhancement Pull requests that should improve performance

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants