Avatar for the recmo user
recmo
uint
BlogDocsChangelog

perf: add special case for U256 and limb-specific shift left

#472
Comparing
Rjected:dan/optimize-shl-two
(
276ddba
) with
main
(
20a2367
)
CodSpeed Performance Gauge
0%
Improvements
0
Regressions
0
Untouched
225
New
0
Dropped
0
Ignored
0

Benchmarks

Passed

add/64
benches/bench.rs::benches::benches::group::add/64
CodSpeed Performance Gauge
0%
126.2 µs
126.2 µs
algo/addmul_n/3
benches/bench.rs::benches::benches::group::algo/addmul_n/3
CodSpeed Performance Gauge
0%
565.4 µs
565.4 µs
algo/addmul_n/4
benches/bench.rs::benches::benches::group::algo/addmul_n/4
CodSpeed Performance Gauge
0%
808.9 µs
808.8 µs
algo/addmul_n/5
benches/bench.rs::benches::benches::group::algo/addmul_n/5
CodSpeed Performance Gauge
0%
2 ms
2 ms
add_mod/192
benches/bench.rs::benches::benches::group::add_mod/192
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
add/512
benches/bench.rs::benches::benches::group::add/512
CodSpeed Performance Gauge
0%
1 ms
1 ms
div_rem/192/192
benches/bench.rs::benches::benches::group::div_rem/192/192
CodSpeed Performance Gauge
0%
1.8 ms
1.8 ms
add_mod/256
benches/bench.rs::benches::benches::group::add_mod/256
CodSpeed Performance Gauge
0%
2.5 ms
2.5 ms
add_mod/512
benches/bench.rs::benches::benches::group::add_mod/512
CodSpeed Performance Gauge
0%
3.7 ms
3.7 ms
add/128
benches/bench.rs::benches::benches::group::add/128
CodSpeed Performance Gauge
0%
263.3 µs
263.3 µs
add/192
benches/bench.rs::benches::benches::group::add/192
CodSpeed Performance Gauge
0%
389.4 µs
389.4 µs
algo/div/reciprocal_2/mg10
benches/bench.rs::benches::benches::group::algo/div/reciprocal_2/mg10
CodSpeed Performance Gauge
0%
303.4 µs
303.4 µs
algorithms/gcd/matrix/apply/384
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/384
CodSpeed Performance Gauge
0%
3.6 ms
3.6 ms
algorithms/gcd/matrix/apply/512
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/512
CodSpeed Performance Gauge
0%
4.6 ms
4.6 ms
cmp/128
benches/bench.rs::benches::benches::group::cmp/128
CodSpeed Performance Gauge
0%
192.1 µs
192.1 µs
cmp/384
benches/bench.rs::benches::benches::group::cmp/384
CodSpeed Performance Gauge
0%
483.8 µs
483.8 µs
cmp/512
benches/bench.rs::benches::benches::group::cmp/512
CodSpeed Performance Gauge
0%
629.7 µs
629.7 µs
cmp/64
benches/bench.rs::benches::benches::group::cmp/64
CodSpeed Performance Gauge
0%
108.1 µs
108.1 µs
div_rem/384/192
benches/bench.rs::benches::benches::group::div_rem/384/192
CodSpeed Performance Gauge
0%
4 ms
4 ms
algorithms/gcd/matrix/from_u64
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/from_u64
CodSpeed Performance Gauge
0%
2 ms
2 ms
div_rem/256/128
benches/bench.rs::benches::benches::group::div_rem/256/128
CodSpeed Performance Gauge
0%
1.9 ms
1.9 ms
div_rem/192/96
benches/bench.rs::benches::benches::group::div_rem/192/96
CodSpeed Performance Gauge
0%
1.7 ms
1.7 ms
div_rem/256/64
benches/bench.rs::benches::benches::group::div_rem/256/64
CodSpeed Performance Gauge
0%
1.6 ms
1.6 ms
div_rem/192/64
benches/bench.rs::benches::benches::group::div_rem/192/64
CodSpeed Performance Gauge
0%
1.4 ms
1.4 ms
div_rem/384/384
benches/bench.rs::benches::benches::group::div_rem/384/384
CodSpeed Performance Gauge
0%
2.4 ms
2.4 ms
div_rem/384/64
benches/bench.rs::benches::benches::group::div_rem/384/64
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
add/384
benches/bench.rs::benches::benches::group::add/384
CodSpeed Performance Gauge
0%
767.5 µs
767.5 µs
algo/div/3x2/mg10
benches/bench.rs::benches::benches::group::algo/div/3x2/mg10
CodSpeed Performance Gauge
0%
525.8 µs
525.8 µs
algo/addmul_n/2
benches/bench.rs::benches::benches::group::algo/addmul_n/2
CodSpeed Performance Gauge
0%
361.2 µs
361.2 µs
algo/div/2x1/ref
benches/bench.rs::benches::benches::group::algo/div/2x1/ref
CodSpeed Performance Gauge
0%
321.8 µs
321.8 µs
algo/div/2x1/mg10
benches/bench.rs::benches::benches::group::algo/div/2x1/mg10
CodSpeed Performance Gauge
0%
313 µs
313 µs
div_rem/256/256
benches/bench.rs::benches::benches::group::div_rem/256/256
CodSpeed Performance Gauge
0%
2 ms
2 ms
div_rem/4096/2048
benches/bench.rs::benches::benches::group::div_rem/4096/2048
CodSpeed Performance Gauge
0%
784.4 µs
784.4 µs
add_mod/384
benches/bench.rs::benches::benches::group::add_mod/384
CodSpeed Performance Gauge
0%
3.1 ms
3.1 ms
algo/addmul_n/6
benches/bench.rs::benches::benches::group::algo/addmul_n/6
CodSpeed Performance Gauge
0%
2.5 ms
2.5 ms
algorithms/gcd/matrix/from_u64_prefix
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/from_u64_prefix
CodSpeed Performance Gauge
0%
1.3 ms
1.3 ms
div_rem/128/128
benches/bench.rs::benches::benches::group::div_rem/128/128
CodSpeed Performance Gauge
0%
1.2 ms
1.2 ms
div_rem/128/64
benches/bench.rs::benches::benches::group::div_rem/128/64
CodSpeed Performance Gauge
0%
1 ms
1 ms
add_mod/128
benches/bench.rs::benches::benches::group::add_mod/128
CodSpeed Performance Gauge
0%
1.3 ms
1.3 ms
add_mod/64
benches/bench.rs::benches::benches::group::add_mod/64
CodSpeed Performance Gauge
0%
577.8 µs
577.8 µs
algorithms/gcd/matrix/apply/256
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/256
CodSpeed Performance Gauge
0%
1.1 ms
1.1 ms
add/256
benches/bench.rs::benches::benches::group::add/256
CodSpeed Performance Gauge
0%
515.4 µs
515.4 µs
algo/div/3x2/ref
benches/bench.rs::benches::benches::group::algo/div/3x2/ref
CodSpeed Performance Gauge
0%
426.1 µs
426.1 µs
cmp/256
benches/bench.rs::benches::benches::group::cmp/256
CodSpeed Performance Gauge
0%
338 µs
338 µs
div_rem/4096/4096
benches/bench.rs::benches::benches::group::div_rem/4096/4096
CodSpeed Performance Gauge
0%
143.7 µs
143.7 µs
cmp/192
benches/bench.rs::benches::benches::group::cmp/192
CodSpeed Performance Gauge
0%
265.1 µs
265.1 µs
algo/addmul_n/1
benches/bench.rs::benches::benches::group::algo/addmul_n/1
CodSpeed Performance Gauge
0%
173.7 µs
173.8 µs
algorithms/gcd/matrix/apply/4096
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/4096
CodSpeed Performance Gauge
0%
272.6 µs
272.6 µs
algo/div/reciprocal/mg10
benches/bench.rs::benches::benches::group::algo/div/reciprocal/mg10
CodSpeed Performance Gauge
0%
215.1 µs
215.1 µs
algo/div/reciprocal/ref
benches/bench.rs::benches::benches::group::algo/div/reciprocal/ref
CodSpeed Performance Gauge
0%
162.1 µs
162.1 µs
add_mod/4096
benches/bench.rs::benches::benches::group::add_mod/4096
CodSpeed Performance Gauge
-1%
215.5 µs
218.3 µs
add/4096
benches/bench.rs::benches::benches::group::add/4096
CodSpeed Performance Gauge
-3%
99.6 µs
102.6 µs
algorithms/gcd/matrix/apply/128
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/128
CodSpeed Performance Gauge
N/A
< 1 ns
< 1 ns
algorithms/gcd/matrix/apply/192
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/192
CodSpeed Performance Gauge
N/A
< 1 ns
< 1 ns
algorithms/gcd/matrix/apply/64
benches/bench.rs::benches::benches::group::algorithms/gcd/matrix/apply/64
CodSpeed Performance Gauge
N/A
< 1 ns
< 1 ns
root/2/128/128
benches/bench.rs::benches::benches::group::root/2/128/128
CodSpeed Performance Gauge
0%
5.6 ms
5.6 ms
pow/64
benches/bench.rs::benches::benches::group::pow/64
CodSpeed Performance Gauge
0%
17.5 µs
17.4 µs
overflowing_pow/64
benches/bench.rs::benches::benches::group::overflowing_pow/64
CodSpeed Performance Gauge
0%
79.4 µs
79.4 µs
pow/128
benches/bench.rs::benches::benches::group::pow/128
CodSpeed Performance Gauge
0%
87.8 µs
87.7 µs
root/3/128/128
benches/bench.rs::benches::benches::group::root/3/128/128
CodSpeed Performance Gauge
0%
5.2 ms
5.2 ms
root/5/128/128
benches/bench.rs::benches::benches::group::root/5/128/128
CodSpeed Performance Gauge
0%
5.8 ms
5.8 ms
sub/64
benches/bench.rs::benches::benches::group::sub/64
CodSpeed Performance Gauge
0%
126.2 µs
126.2 µs
mul/64
benches/bench.rs::benches::benches::group::mul/64
CodSpeed Performance Gauge
0%
131.7 µs
131.7 µs
pow/192
benches/bench.rs::benches::benches::group::pow/192
CodSpeed Performance Gauge
0%
339 µs
339 µs
neg/128
benches/bench.rs::benches::benches::group::neg/128
CodSpeed Performance Gauge
0%
182.1 µs
182.1 µs
root/127/128/128
benches/bench.rs::benches::benches::group::root/127/128/128
CodSpeed Performance Gauge
0%
10.3 ms
10.3 ms
pow_mod/64
benches/bench.rs::benches::benches::group::pow_mod/64
CodSpeed Performance Gauge
0%
709.2 µs
709.2 µs
mul_mod/4096
benches/bench.rs::benches::benches::group::mul_mod/4096
CodSpeed Performance Gauge
0%
3.8 ms
3.8 ms
mul/4096
benches/bench.rs::benches::benches::group::mul/4096
CodSpeed Performance Gauge
0%
784.6 µs
784.6 µs
log/4096
benches/bench.rs::benches::benches::group::log/4096
CodSpeed Performance Gauge
0%
3.7 ms
3.7 ms
eq/384
benches/bench.rs::benches::benches::group::eq/384
CodSpeed Performance Gauge
0%
598 µs
597.9 µs
overflowing_pow/128
benches/bench.rs::benches::benches::group::overflowing_pow/128
CodSpeed Performance Gauge
0%
622.9 µs
622.9 µs
reduce_mod/192
benches/bench.rs::benches::benches::group::reduce_mod/192
CodSpeed Performance Gauge
0%
1.2 ms
1.2 ms
sub/512
benches/bench.rs::benches::benches::group::sub/512
CodSpeed Performance Gauge
0%
1 ms
1 ms
reduce_mod/256
benches/bench.rs::benches::benches::group::reduce_mod/256
CodSpeed Performance Gauge
0%
1.4 ms
1.4 ms
reduce_mod/384
benches/bench.rs::benches::benches::group::reduce_mod/384
CodSpeed Performance Gauge
0%
1.7 ms
1.7 ms
root/2/64/64
benches/bench.rs::benches::benches::group::root/2/64/64
CodSpeed Performance Gauge
0%
2.1 ms
2.1 ms
reduce_mod/512
benches/bench.rs::benches::benches::group::reduce_mod/512
CodSpeed Performance Gauge
0%
2.1 ms
2.1 ms
root/3/64/64
benches/bench.rs::benches::benches::group::root/3/64/64
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
root/5/64/64
benches/bench.rs::benches::benches::group::root/5/64/64
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
pow/4096
benches/bench.rs::benches::benches::group::pow/4096
CodSpeed Performance Gauge
0%
2.8 ms
2.8 ms
div_rem/512/64
benches/bench.rs::benches::benches::group::div_rem/512/64
CodSpeed Performance Gauge
0%
2.9 ms
2.9 ms
pow_mod/128
benches/bench.rs::benches::benches::group::pow_mod/128
CodSpeed Performance Gauge
0%
3.1 ms
3.1 ms
mul_mod/192
benches/bench.rs::benches::benches::group::mul_mod/192
CodSpeed Performance Gauge
0%
4.1 ms
4.1 ms
log/192
benches/bench.rs::benches::benches::group::log/192
CodSpeed Performance Gauge
0%
11.9 ms
11.9 ms
inv_mod/128
benches/bench.rs::benches::benches::group::inv_mod/128
CodSpeed Performance Gauge
0%
6.2 ms
6.2 ms
log/256
benches/bench.rs::benches::benches::group::log/256
CodSpeed Performance Gauge
0%
14.4 ms
14.4 ms
root/127/384/384
benches/bench.rs::benches::benches::group::root/127/384/384
CodSpeed Performance Gauge
0%
15.7 ms
15.7 ms
inv_mod/256
benches/bench.rs::benches::benches::group::inv_mod/256
CodSpeed Performance Gauge
0%
21.4 ms
21.4 ms
pow_mod/512
benches/bench.rs::benches::benches::group::pow_mod/512
CodSpeed Performance Gauge
0%
80.2 ms
80.2 ms
pow_mod/4096
benches/bench.rs::benches::benches::group::pow_mod/4096
CodSpeed Performance Gauge
0%
219.7 ms
219.7 ms
inv_mod/4096
benches/bench.rs::benches::benches::group::inv_mod/4096
CodSpeed Performance Gauge
0%
68.1 ms
68.1 ms
inv_mod/512
benches/bench.rs::benches::benches::group::inv_mod/512
CodSpeed Performance Gauge
0%
156.1 ms
156.1 ms
inv_mod/384
benches/bench.rs::benches::benches::group::inv_mod/384
CodSpeed Performance Gauge
0%
93.3 ms
93.3 ms
eq/128
benches/bench.rs::benches::benches::group::eq/128
CodSpeed Performance Gauge
0%
182.5 µs
182.5 µs
eq/512
benches/bench.rs::benches::benches::group::eq/512
CodSpeed Performance Gauge
0%
766 µs
766 µs
eq/64
benches/bench.rs::benches::benches::group::eq/64
CodSpeed Performance Gauge
0%
101.2 µs
101.2 µs
ge/128
benches/bench.rs::benches::benches::group::ge/128
CodSpeed Performance Gauge
0%
189.4 µs
189.4 µs
ge/384
benches/bench.rs::benches::benches::group::ge/384
CodSpeed Performance Gauge
0%
481 µs
481 µs
ge/512
benches/bench.rs::benches::benches::group::ge/512
CodSpeed Performance Gauge
0%
626.9 µs
626.9 µs
ge/64
benches/bench.rs::benches::benches::group::ge/64
CodSpeed Performance Gauge
0%
101.2 µs
101.2 µs
gt/128
benches/bench.rs::benches::benches::group::gt/128
CodSpeed Performance Gauge
0%
189.4 µs
189.4 µs
gt/384
benches/bench.rs::benches::benches::group::gt/384
CodSpeed Performance Gauge
0%
481.1 µs
481.1 µs
gt/512
benches/bench.rs::benches::benches::group::gt/512
CodSpeed Performance Gauge
0%
626.9 µs
626.9 µs
gt/64
benches/bench.rs::benches::benches::group::gt/64
CodSpeed Performance Gauge
0%
101.2 µs
101.2 µs
inv_mod/192
benches/bench.rs::benches::benches::group::inv_mod/192
CodSpeed Performance Gauge
0%
13.6 ms
13.6 ms
is_zero/128
benches/bench.rs::benches::benches::group::is_zero/128
CodSpeed Performance Gauge
0%
101.2 µs
101.2 µs
is_zero/192
benches/bench.rs::benches::benches::group::is_zero/192
CodSpeed Performance Gauge
0%
164 µs
164 µs
is_zero/256
benches/bench.rs::benches::benches::group::is_zero/256
CodSpeed Performance Gauge
0%
195 µs
195 µs
is_zero/512
benches/bench.rs::benches::benches::group::is_zero/512
CodSpeed Performance Gauge
0%
385.4 µs
385.4 µs
is_zero/64
benches/bench.rs::benches::benches::group::is_zero/64
CodSpeed Performance Gauge
0%
60 µs
60 µs
le/128
benches/bench.rs::benches::benches::group::le/128
CodSpeed Performance Gauge
0%
189.4 µs
189.4 µs
le/384
benches/bench.rs::benches::benches::group::le/384
CodSpeed Performance Gauge
0%
481.1 µs
481.1 µs
le/512
benches/bench.rs::benches::benches::group::le/512
CodSpeed Performance Gauge
0%
626.9 µs
626.9 µs
le/64
benches/bench.rs::benches::benches::group::le/64
CodSpeed Performance Gauge
0%
101.2 µs
101.2 µs
log/512
benches/bench.rs::benches::benches::group::log/512
CodSpeed Performance Gauge
0%
27.9 ms
27.9 ms
lt/128
benches/bench.rs::benches::benches::group::lt/128
CodSpeed Performance Gauge
0%
189.4 µs
189.4 µs
lt/384
benches/bench.rs::benches::benches::group::lt/384
CodSpeed Performance Gauge
0%
481.1 µs
481.1 µs
lt/512
benches/bench.rs::benches::benches::group::lt/512
CodSpeed Performance Gauge
0%
626.9 µs
626.9 µs
lt/64
benches/bench.rs::benches::benches::group::lt/64
CodSpeed Performance Gauge
0%
101.2 µs
101.2 µs
max/192
benches/bench.rs::benches::benches::group::max/192
CodSpeed Performance Gauge
0%
439.5 µs
439.5 µs
max/256
benches/bench.rs::benches::benches::group::max/256
CodSpeed Performance Gauge
0%
554.4 µs
554.4 µs
max/64
benches/bench.rs::benches::benches::group::max/64
CodSpeed Performance Gauge
0%
145.8 µs
145.8 µs
min/192
benches/bench.rs::benches::benches::group::min/192
CodSpeed Performance Gauge
0%
439.5 µs
439.5 µs
min/256
benches/bench.rs::benches::benches::group::min/256
CodSpeed Performance Gauge
0%
554.4 µs
554.4 µs
min/64
benches/bench.rs::benches::benches::group::min/64
CodSpeed Performance Gauge
0%
145.7 µs
145.7 µs
mul/128
benches/bench.rs::benches::benches::group::mul/128
CodSpeed Performance Gauge
0%
274.4 µs
274.4 µs
mul/192
benches/bench.rs::benches::benches::group::mul/192
CodSpeed Performance Gauge
0%
433.8 µs
433.8 µs
neg/192
benches/bench.rs::benches::benches::group::neg/192
CodSpeed Performance Gauge
0%
274.4 µs
274.4 µs
overflowing_pow/192
benches/bench.rs::benches::benches::group::overflowing_pow/192
CodSpeed Performance Gauge
0%
1.3 ms
1.3 ms
overflowing_pow/256
benches/bench.rs::benches::benches::group::overflowing_pow/256
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
pow/256
benches/bench.rs::benches::benches::group::pow/256
CodSpeed Performance Gauge
0%
964.3 µs
964.3 µs
pow/384
benches/bench.rs::benches::benches::group::pow/384
CodSpeed Performance Gauge
0%
5.4 ms
5.4 ms
pow_mod/192
benches/bench.rs::benches::benches::group::pow_mod/192
CodSpeed Performance Gauge
0%
10.3 ms
10.3 ms
pow_mod/256
benches/bench.rs::benches::benches::group::pow_mod/256
CodSpeed Performance Gauge
0%
17.7 ms
17.7 ms
reduce_mod/128
benches/bench.rs::benches::benches::group::reduce_mod/128
CodSpeed Performance Gauge
0%
728 µs
728 µs
reduce_mod/64
benches/bench.rs::benches::benches::group::reduce_mod/64
CodSpeed Performance Gauge
0%
326 µs
326 µs
sub/128
benches/bench.rs::benches::benches::group::sub/128
CodSpeed Performance Gauge
0%
263.3 µs
263.3 µs
sub/192
benches/bench.rs::benches::benches::group::sub/192
CodSpeed Performance Gauge
0%
389.4 µs
389.4 µs
widening_mul/1024/1024
benches/bench.rs::benches::benches::group::widening_mul/1024/1024
CodSpeed Performance Gauge
0%
12.1 ms
12.1 ms
widening_mul/64/64
benches/bench.rs::benches::benches::group::widening_mul/64/64
CodSpeed Performance Gauge
0%
243.4 µs
243.4 µs
div_rem/512/256
benches/bench.rs::benches::benches::group::div_rem/512/256
CodSpeed Performance Gauge
0%
5.1 ms
5.1 ms
div_rem/512/512
benches/bench.rs::benches::benches::group::div_rem/512/512
CodSpeed Performance Gauge
0%
2.8 ms
2.8 ms
mul/384
benches/bench.rs::benches::benches::group::mul/384
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
pow_mod/384
benches/bench.rs::benches::benches::group::pow_mod/384
CodSpeed Performance Gauge
0%
41.6 ms
41.6 ms
min/512
benches/bench.rs::benches::benches::group::min/512
CodSpeed Performance Gauge
0%
1.1 ms
1.1 ms
max/384
benches/bench.rs::benches::benches::group::max/384
CodSpeed Performance Gauge
0%
812.1 µs
812.1 µs
sub/384
benches/bench.rs::benches::benches::group::sub/384
CodSpeed Performance Gauge
0%
767.5 µs
767.5 µs
mul_mod/512
benches/bench.rs::benches::benches::group::mul_mod/512
CodSpeed Performance Gauge
0%
11.8 ms
11.8 ms
neg/384
benches/bench.rs::benches::benches::group::neg/384
CodSpeed Performance Gauge
0%
534.8 µs
534.8 µs
log/128
benches/bench.rs::benches::benches::group::log/128
CodSpeed Performance Gauge
0%
8.8 ms
8.8 ms
mul_mod/384
benches/bench.rs::benches::benches::group::mul_mod/384
CodSpeed Performance Gauge
0%
8.2 ms
8.2 ms
log/384
benches/bench.rs::benches::benches::group::log/384
CodSpeed Performance Gauge
0%
21.6 ms
21.6 ms
overflowing_pow/384
benches/bench.rs::benches::benches::group::overflowing_pow/384
CodSpeed Performance Gauge
0%
5.1 ms
5.1 ms
overflowing_pow/512
benches/bench.rs::benches::benches::group::overflowing_pow/512
CodSpeed Performance Gauge
0%
9.7 ms
9.7 ms
mul_mod/256
benches/bench.rs::benches::benches::group::mul_mod/256
CodSpeed Performance Gauge
0%
5.3 ms
5.3 ms
widening_mul/1024/256
benches/bench.rs::benches::benches::group::widening_mul/1024/256
CodSpeed Performance Gauge
0%
4.7 ms
4.7 ms
pow/512
benches/bench.rs::benches::benches::group::pow/512
CodSpeed Performance Gauge
0%
10.2 ms
10.2 ms
widening_mul/256/1024
benches/bench.rs::benches::benches::group::widening_mul/256/1024
CodSpeed Performance Gauge
0%
4.8 ms
4.8 ms
widening_mul/1024/64
benches/bench.rs::benches::benches::group::widening_mul/1024/64
CodSpeed Performance Gauge
0%
2.4 ms
2.4 ms
inv_mod/64
benches/bench.rs::benches::benches::group::inv_mod/64
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
mul_mod/128
benches/bench.rs::benches::benches::group::mul_mod/128
CodSpeed Performance Gauge
0%
2 ms
2 ms
neg/64
benches/bench.rs::benches::benches::group::neg/64
CodSpeed Performance Gauge
0%
83.4 µs
83.4 µs
mul/512
benches/bench.rs::benches::benches::group::mul/512
CodSpeed Performance Gauge
0%
3.1 ms
3.1 ms
overflowing_pow/4096
benches/bench.rs::benches::benches::group::overflowing_pow/4096
CodSpeed Performance Gauge
0%
2.4 ms
2.4 ms
widening_mul/64/1024
benches/bench.rs::benches::benches::group::widening_mul/64/1024
CodSpeed Performance Gauge
0%
2.4 ms
2.4 ms
max/512
benches/bench.rs::benches::benches::group::max/512
CodSpeed Performance Gauge
0%
1.1 ms
1.1 ms
widening_mul/256/256
benches/bench.rs::benches::benches::group::widening_mul/256/256
CodSpeed Performance Gauge
0%
1.8 ms
1.8 ms
min/384
benches/bench.rs::benches::benches::group::min/384
CodSpeed Performance Gauge
0%
812.1 µs
812.1 µs
widening_mul/64/256
benches/bench.rs::benches::benches::group::widening_mul/64/256
CodSpeed Performance Gauge
0%
765.2 µs
765.2 µs
widening_mul/256/64
benches/bench.rs::benches::benches::group::widening_mul/256/64
CodSpeed Performance Gauge
0%
756.9 µs
756.9 µs
mul/256
benches/bench.rs::benches::benches::group::mul/256
CodSpeed Performance Gauge
0%
632.4 µs
632.4 µs
div_rem/64/32
benches/bench.rs::benches::benches::group::div_rem/64/32
CodSpeed Performance Gauge
0%
538 µs
538.1 µs
div_rem/64/64
benches/bench.rs::benches::benches::group::div_rem/64/64
CodSpeed Performance Gauge
0%
538 µs
538.1 µs
sub/256
benches/bench.rs::benches::benches::group::sub/256
CodSpeed Performance Gauge
0%
515.4 µs
515.4 µs
mul_mod/64
benches/bench.rs::benches::benches::group::mul_mod/64
CodSpeed Performance Gauge
0%
893.6 µs
893.7 µs
eq/256
benches/bench.rs::benches::benches::group::eq/256
CodSpeed Performance Gauge
0%
368.6 µs
368.6 µs
neg/256
benches/bench.rs::benches::benches::group::neg/256
CodSpeed Performance Gauge
0%
361.2 µs
361.2 µs
neg/512
benches/bench.rs::benches::benches::group::neg/512
CodSpeed Performance Gauge
0%
708.7 µs
708.8 µs
ge/256
benches/bench.rs::benches::benches::group::ge/256
CodSpeed Performance Gauge
0%
335.2 µs
335.3 µs
gt/256
benches/bench.rs::benches::benches::group::gt/256
CodSpeed Performance Gauge
0%
335.2 µs
335.3 µs
le/256
benches/bench.rs::benches::benches::group::le/256
CodSpeed Performance Gauge
0%
335.2 µs
335.3 µs
lt/256
benches/bench.rs::benches::benches::group::lt/256
CodSpeed Performance Gauge
0%
335.2 µs
335.2 µs
is_zero/384
benches/bench.rs::benches::benches::group::is_zero/384
CodSpeed Performance Gauge
0%
312.5 µs
312.5 µs
max/128
benches/bench.rs::benches::benches::group::max/128
CodSpeed Performance Gauge
0%
296.7 µs
296.8 µs
min/128
benches/bench.rs::benches::benches::group::min/128
CodSpeed Performance Gauge
0%
296.7 µs
296.8 µs
eq/192
benches/bench.rs::benches::benches::group::eq/192
CodSpeed Performance Gauge
0%
301.3 µs
301.3 µs
ge/192
benches/bench.rs::benches::benches::group::ge/192
CodSpeed Performance Gauge
0%
262.3 µs
262.3 µs
gt/192
benches/bench.rs::benches::benches::group::gt/192
CodSpeed Performance Gauge
0%
262.3 µs
262.3 µs
le/192
benches/bench.rs::benches::benches::group::le/192
CodSpeed Performance Gauge
0%
262.3 µs
262.3 µs
lt/192
benches/bench.rs::benches::benches::group::lt/192
CodSpeed Performance Gauge
0%
262.3 µs
262.3 µs
root/127/64/64
benches/bench.rs::benches::benches::group::root/127/64/64
CodSpeed Performance Gauge
0%
212 µs
212 µs
root/5/4096/4096
benches/bench.rs::benches::benches::group::root/5/4096/4096
CodSpeed Performance Gauge
0%
9.5 ms
9.5 ms
root/3/4096/4096
benches/bench.rs::benches::benches::group::root/3/4096/4096
CodSpeed Performance Gauge
0%
9.2 ms
9.2 ms
root/2/4096/4096
benches/bench.rs::benches::benches::group::root/2/4096/4096
CodSpeed Performance Gauge
0%
8.6 ms
8.6 ms
reduce_mod/4096
benches/bench.rs::benches::benches::group::reduce_mod/4096
CodSpeed Performance Gauge
0%
113 µs
113.1 µs
neg/4096
benches/bench.rs::benches::benches::group::neg/4096
CodSpeed Performance Gauge
0%
72.9 µs
72.9 µs
root/127/4096/4096
benches/bench.rs::benches::benches::group::root/127/4096/4096
CodSpeed Performance Gauge
0%
2.7 ms
2.7 ms
log/64
benches/bench.rs::benches::benches::group::log/64
CodSpeed Performance Gauge
0%
1.5 ms
1.5 ms
root/3/384/384
benches/bench.rs::benches::benches::group::root/3/384/384
CodSpeed Performance Gauge
0%
24.2 ms
24.4 ms
root/2/384/384
benches/bench.rs::benches::benches::group::root/2/384/384
CodSpeed Performance Gauge
-1%
25.1 ms
25.2 ms
is_zero/4096
benches/bench.rs::benches::benches::group::is_zero/4096
CodSpeed Performance Gauge
-1%
4.1 µs
4.2 µs
root/127/256/256
benches/bench.rs::benches::benches::group::root/127/256/256
CodSpeed Performance Gauge
-1%
12.6 ms
12.7 ms
root/127/512/512
benches/bench.rs::benches::benches::group::root/127/512/512
CodSpeed Performance Gauge
-1%
31 ms
31.2 ms
root/127/192/192
benches/bench.rs::benches::benches::group::root/127/192/192
CodSpeed Performance Gauge
-1%
16.4 ms
16.5 ms
root/5/256/256
benches/bench.rs::benches::benches::group::root/5/256/256
CodSpeed Performance Gauge
-1%
11.3 ms
11.4 ms
root/5/384/384
benches/bench.rs::benches::benches::group::root/5/384/384
CodSpeed Performance Gauge
-1%
19.3 ms
19.5 ms
root/3/192/192
benches/bench.rs::benches::benches::group::root/3/192/192
CodSpeed Performance Gauge
-1%
8.6 ms
8.7 ms
root/5/192/192
benches/bench.rs::benches::benches::group::root/5/192/192
CodSpeed Performance Gauge
-1%
8 ms
8.1 ms
div_rem/4096/64
benches/bench.rs::benches::benches::group::div_rem/4096/64
CodSpeed Performance Gauge
-1%
196 µs
198.9 µs
root/2/512/512
benches/bench.rs::benches::benches::group::root/2/512/512
CodSpeed Performance Gauge
-2%
36.2 ms
36.7 ms
root/3/512/512
benches/bench.rs::benches::benches::group::root/3/512/512
CodSpeed Performance Gauge
-2%
31.5 ms
32.1 ms
root/5/512/512
benches/bench.rs::benches::benches::group::root/5/512/512
CodSpeed Performance Gauge
-2%
33.4 ms
33.9 ms
root/2/256/256
benches/bench.rs::benches::benches::group::root/2/256/256
CodSpeed Performance Gauge
-2%
12.3 ms
12.5 ms
root/3/256/256
benches/bench.rs::benches::benches::group::root/3/256/256
CodSpeed Performance Gauge
-2%
12 ms
12.3 ms
root/2/192/192
benches/bench.rs::benches::benches::group::root/2/192/192
CodSpeed Performance Gauge
-2%
8.7 ms
8.9 ms
sub/4096
benches/bench.rs::benches::benches::group::sub/4096
CodSpeed Performance Gauge
-3%
94.3 µs
97.3 µs
max/4096
benches/bench.rs::benches::benches::group::max/4096
CodSpeed Performance Gauge
-4%
82 µs
85.1 µs
min/4096
benches/bench.rs::benches::benches::group::min/4096
CodSpeed Performance Gauge
-4%
82 µs
85.1 µs
eq/4096
benches/bench.rs::benches::benches::group::eq/4096
CodSpeed Performance Gauge
-5%
52.5 µs
55.5 µs
gt/4096
benches/bench.rs::benches::benches::group::gt/4096
CodSpeed Performance Gauge
-6%
51.9 µs
54.9 µs
lt/4096
benches/bench.rs::benches::benches::group::lt/4096
CodSpeed Performance Gauge
-6%
51.9 µs
54.9 µs
cmp/4096
benches/bench.rs::benches::benches::group::cmp/4096
CodSpeed Performance Gauge
-6%
51.9 µs
54.9 µs
ge/4096
benches/bench.rs::benches::benches::group::ge/4096
CodSpeed Performance Gauge
-6%
51.9 µs
54.9 µs
le/4096
benches/bench.rs::benches::benches::group::le/4096
CodSpeed Performance Gauge
-6%
51.9 µs
54.9 µs

Commits

Click on a commit to change the comparison range
Base
main
20a2367
0%
feat: make algorithm actually work
8b2137d
3 days ago
by Rjected
0%
perf: just use generalized loop for limb shl
276ddba
2 days ago
by Rjected
© 2025 CodSpeed Technology
Home Terms PrivacyDocs