Merge pull request #104 from bwasty/uint_benchmarks
Add uint operator benchmarks
This commit is contained in:
commit
f3666e73b0
|
@ -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]
|
||||
fn u256_from_le(b: &mut Bencher) {
|
||||
b.iter(|| {
|
||||
|
|
Loading…
Reference in New Issue