collect rent in parallel for partitions (#19478)
* collect rent in parallel for partitions * combine use * use fg accounts db thread pool
This commit is contained in:
committed by
GitHub
parent
01a7ec8198
commit
1560d5e3c3
@ -65,7 +65,10 @@ use crate::{
|
||||
use byteorder::{ByteOrder, LittleEndian};
|
||||
use itertools::Itertools;
|
||||
use log::*;
|
||||
use rayon::ThreadPool;
|
||||
use rayon::{
|
||||
iter::{IntoParallelIterator, ParallelIterator},
|
||||
ThreadPool,
|
||||
};
|
||||
use solana_measure::measure::Measure;
|
||||
use solana_metrics::{datapoint_debug, inc_new_counter_debug, inc_new_counter_info};
|
||||
use solana_program_runtime::{ExecuteDetailsTimings, Executors};
|
||||
@ -3858,9 +3861,13 @@ impl Bank {
|
||||
}
|
||||
|
||||
let mut measure = Measure::start("collect_rent_eagerly-ms");
|
||||
for partition in self.rent_collection_partitions() {
|
||||
self.rc.accounts.accounts_db.thread_pool.install(|| {
|
||||
self.rent_collection_partitions()
|
||||
.into_par_iter()
|
||||
.for_each(|partition| {
|
||||
self.collect_rent_in_partition(partition);
|
||||
}
|
||||
});
|
||||
});
|
||||
measure.stop();
|
||||
inc_new_counter_info!("collect_rent_eagerly-ms", measure.as_ms() as usize);
|
||||
}
|
||||
|
Reference in New Issue
Block a user