Avoid cloning Vec<Entry> when calling entries_to_test_shreds() (#22093)

This commit is contained in:
Yueh-Hsuan Chiang
2021-12-24 12:32:43 -08:00
committed by GitHub
parent 2ab4f34c02
commit b89cd8cd1a
9 changed files with 42 additions and 48 deletions

View File

@@ -20,7 +20,7 @@ fn bench_write_shreds(bench: &mut Bencher, entries: Vec<Entry>, ledger_path: &Pa
let blockstore =
Blockstore::open(ledger_path).expect("Expected to be able to open database ledger");
bench.iter(move || {
let shreds = entries_to_test_shreds(entries.clone(), 0, 0, true, 0);
let shreds = entries_to_test_shreds(&entries, 0, 0, true, 0);
blockstore.insert_shreds(shreds, None, false).unwrap();
});
@@ -42,7 +42,7 @@ fn setup_read_bench(
);
// Convert the entries to shreds, write the shreds to the ledger
let shreds = entries_to_test_shreds(entries, slot, slot.saturating_sub(1), true, 0);
let shreds = entries_to_test_shreds(&entries, slot, slot.saturating_sub(1), true, 0);
blockstore
.insert_shreds(shreds, None, false)
.expect("Expectd successful insertion of shreds into ledger");
@@ -135,7 +135,7 @@ fn bench_insert_data_shred_small(bench: &mut Bencher) {
let num_entries = 32 * 1024;
let entries = create_ticks(num_entries, 0, Hash::default());
bench.iter(move || {
let shreds = entries_to_test_shreds(entries.clone(), 0, 0, true, 0);
let shreds = entries_to_test_shreds(&entries, 0, 0, true, 0);
blockstore.insert_shreds(shreds, None, false).unwrap();
});
Blockstore::destroy(&ledger_path).expect("Expected successful database destruction");
@@ -150,7 +150,7 @@ fn bench_insert_data_shred_big(bench: &mut Bencher) {
let num_entries = 32 * 1024;
let entries = create_ticks(num_entries, 0, Hash::default());
bench.iter(move || {
let shreds = entries_to_test_shreds(entries.clone(), 0, 0, true, 0);
let shreds = entries_to_test_shreds(&entries, 0, 0, true, 0);
blockstore.insert_shreds(shreds, None, false).unwrap();
});
Blockstore::destroy(&ledger_path).expect("Expected successful database destruction");