add uint operator benchmarks (#82)
This commit is contained in:
parent
de3329a160
commit
42ca5e0e9c
|
@ -182,6 +182,126 @@ fn u128_mul(b: &mut Bencher) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_bit_and(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U256([2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) & black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_bit_and(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U512([11707750893627518758, 17679501210898117940, 2472932874039724966, 11177683849610900539, 2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) & black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_bit_xor(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U256([2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) ^ black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_bit_xor(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U512([11707750893627518758, 17679501210898117940, 2472932874039724966, 11177683849610900539, 2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) ^ black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_bit_or(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U256([2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) | black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_bit_or(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U512([11707750893627518758, 17679501210898117940, 2472932874039724966, 11177683849610900539, 2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) | black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_not(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
b.iter(|| {
|
||||||
|
!black_box(one)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_not(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
b.iter(|| {
|
||||||
|
!black_box(one)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_shl(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) << 128
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_shl(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) << 128
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_shr(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) >> 128
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_shr(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) >> 128
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u256_ord(b: &mut Bencher) {
|
||||||
|
let one = U256([12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U256([2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) < black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn u512_ord(b: &mut Bencher) {
|
||||||
|
let one = U512([8326634216714383706, 15837136097609390493, 13004317189126203332, 7031796866963419685, 12767554894655550452, 16333049135534778834, 140317443000293558, 598963]);
|
||||||
|
let two = U512([11707750893627518758, 17679501210898117940, 2472932874039724966, 11177683849610900539, 2096410819092764509, 8483673822214032535, 36306297304129857, 3453]);
|
||||||
|
b.iter(|| {
|
||||||
|
black_box(one) < black_box(two)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
#[bench]
|
#[bench]
|
||||||
fn u256_from_le(b: &mut Bencher) {
|
fn u256_from_le(b: &mut Bencher) {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
|
|
Loading…
Reference in New Issue