Skip to content

Commit d87e308

Browse files
authored
base64ct: fix benchmarks (#1946)
1 parent 3aaf6ae commit d87e308

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

base64ct/benches/mod.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ extern crate test;
66
use base64ct::{Base64Unpadded, Encoding};
77
use test::Bencher;
88

9-
const B64_LEN: usize = 100_002;
9+
const B64_LEN: usize = 100_000;
1010
const RAW_LEN: usize = (3 * B64_LEN) / 4;
1111

1212
#[inline(never)]
@@ -32,19 +32,19 @@ fn decode_bench(b: &mut Bencher) {
3232
let b64_data = get_b64_data();
3333
let mut buf = get_raw_data();
3434
b.iter(|| {
35-
let out = Base64Unpadded::decode(&b64_data, &mut buf).unwrap();
35+
let out = Base64Unpadded::decode(test::black_box(&b64_data), &mut buf).unwrap();
3636
test::black_box(out);
3737
});
3838
b.bytes = RAW_LEN as u64;
3939
}
4040

4141
#[bench]
4242
fn decode_in_place_bench(b: &mut Bencher) {
43-
let mut b64_data = get_b64_data().into_bytes();
43+
let b64_data = get_b64_data().into_bytes();
44+
let mut buf = b64_data.clone();
4445
b.iter(|| {
45-
// since it works on the same buffer over and over,
46-
// almost always `out` will be an error
47-
let out = Base64Unpadded::decode_in_place(&mut b64_data);
46+
buf.copy_from_slice(&b64_data[..]);
47+
let out = Base64Unpadded::decode_in_place(&mut buf);
4848
let _ = test::black_box(out);
4949
});
5050
b.bytes = RAW_LEN as u64;
@@ -55,7 +55,7 @@ fn encode_bench(b: &mut Bencher) {
5555
let mut buf = get_b64_data().into_bytes();
5656
let raw_data = get_raw_data();
5757
b.iter(|| {
58-
let out = Base64Unpadded::encode(&raw_data, &mut buf).unwrap();
58+
let out = Base64Unpadded::encode(test::black_box(&raw_data), &mut buf).unwrap();
5959
test::black_box(out);
6060
});
6161
b.bytes = RAW_LEN as u64;

0 commit comments

Comments
 (0)