* address warnings from 'rustup run beta cargo clippy --workspace' minor refactoring in: - cli/src/cli.rs - cli/src/offline/blockhash_query.rs - logger/src/lib.rs - runtime/src/accounts_db.rs expect some performance improvement AccountsDB::clean_accounts() * address warnings from 'rustup run beta cargo clippy --workspace --tests' * address warnings from 'rustup run nightly cargo clippy --workspace --all-targets' * rustfmt * fix warning stragglers * properly fix clippy warnings test_vote_subscribe() replace ref-to-arc with ref parameters where arc not cloned * Remove lock around JsonRpcRequestProcessor (#10417) automerge * make ancestors parameter optional to avoid forcing construction of empty hash maps Co-authored-by: Greg Fitzgerald <greg@solana.com>
46 lines
1.2 KiB
Rust
46 lines
1.2 KiB
Rust
#![feature(test)]
|
|
extern crate test;
|
|
|
|
use solana_ledger::entry::{next_entry_mut, Entry, EntrySlice};
|
|
use solana_sdk::hash::{hash, Hash};
|
|
use solana_sdk::signature::{Keypair, Signer};
|
|
use solana_sdk::system_transaction;
|
|
use test::Bencher;
|
|
|
|
const NUM_HASHES: u64 = 400;
|
|
const NUM_ENTRIES: usize = 800;
|
|
|
|
#[bench]
|
|
fn bench_poh_verify_ticks(bencher: &mut Bencher) {
|
|
let zero = Hash::default();
|
|
let mut cur_hash = hash(&zero.as_ref());
|
|
|
|
let mut ticks: Vec<Entry> = Vec::with_capacity(NUM_ENTRIES);
|
|
for _ in 0..NUM_ENTRIES {
|
|
ticks.push(next_entry_mut(&mut cur_hash, NUM_HASHES, vec![]));
|
|
}
|
|
|
|
bencher.iter(|| {
|
|
ticks.verify(&cur_hash);
|
|
})
|
|
}
|
|
|
|
#[bench]
|
|
fn bench_poh_verify_transaction_entries(bencher: &mut Bencher) {
|
|
let zero = Hash::default();
|
|
let mut cur_hash = hash(&zero.as_ref());
|
|
|
|
let keypair1 = Keypair::new();
|
|
let pubkey1 = keypair1.pubkey();
|
|
|
|
let mut ticks: Vec<Entry> = Vec::with_capacity(NUM_ENTRIES);
|
|
for _ in 0..NUM_ENTRIES {
|
|
let tx = system_transaction::transfer(&keypair1, &pubkey1, 42, cur_hash);
|
|
ticks.push(next_entry_mut(&mut cur_hash, NUM_HASHES, vec![tx]));
|
|
}
|
|
|
|
bencher.iter(|| {
|
|
ticks.verify(&cur_hash);
|
|
})
|
|
}
|