Add experimental knob for tuning PoH pinned CPU core (bp #14330) (#14341)

* core: Update stale error message

(cherry picked from commit 82f61c0c4a)

* validator: Add experimental flag to select PoH pinned core

(cherry picked from commit fe667db910)

Co-authored-by: Trent Nelson <trent@solana.com>
This commit is contained in:
mergify[bot]
2020-12-30 03:33:39 +00:00
committed by GitHub
parent abee1e83eb
commit b5335edb35
6 changed files with 40 additions and 6 deletions

View File

@@ -16,7 +16,7 @@ use crate::{
OptimisticallyConfirmedBank, OptimisticallyConfirmedBankTracker,
},
poh_recorder::{PohRecorder, GRACE_TICKS_FACTOR, MAX_GRACE_SLOTS},
poh_service::PohService,
poh_service::{self, PohService},
rewards_recorder_service::{RewardsRecorderSender, RewardsRecorderService},
rpc::JsonRpcConfig,
rpc_pubsub_service::{PubSubConfig, PubSubService},
@@ -116,6 +116,7 @@ pub struct ValidatorConfig {
pub send_transaction_retry_ms: u64,
pub send_transaction_leader_forward_count: u64,
pub no_poh_speed_test: bool,
pub poh_pinned_cpu_core: usize,
}
impl Default for ValidatorConfig {
@@ -159,6 +160,7 @@ impl Default for ValidatorConfig {
send_transaction_retry_ms: 2000,
send_transaction_leader_forward_count: 2,
no_poh_speed_test: true,
poh_pinned_cpu_core: poh_service::DEFAULT_PINNED_CPU_CORE,
}
}
}
@@ -547,6 +549,7 @@ impl Validator {
&poh_config,
&exit,
bank.ticks_per_slot(),
config.poh_pinned_cpu_core,
);
assert_eq!(
blockstore.new_shreds_signals.len(),
@@ -787,7 +790,7 @@ fn check_poh_speed(genesis_config: &GenesisConfig, maybe_hash_samples: Option<u6
info!("PoH speed check: Will sleep {}ns per slot.", extra_ns);
} else {
error!(
"PoH is slower than cluster target tick rate! mine: {} cluster: {}. If you wish to continue, try --ignore-poh-speed",
"PoH is slower than cluster target tick rate! mine: {} cluster: {}. If you wish to continue, try --no-poh-speed-test",
my_ns_per_slot, target_ns_per_slot,
);
abort();