Add execute metrics

This commit is contained in:
Carl Lin
2021-12-20 23:03:20 -05:00
committed by Trent Nelson
parent 7d32909e17
commit b25e4a200b
12 changed files with 225 additions and 38 deletions

View File

@@ -5,7 +5,7 @@ use {
instruction_recorder::InstructionRecorder,
invoke_context::{BuiltinProgram, Executors, InvokeContext},
log_collector::LogCollector,
timings::ExecuteDetailsTimings,
timings::ExecuteTimings,
},
solana_sdk::{
account::WritableAccount,
@@ -60,7 +60,7 @@ impl MessageProcessor {
instruction_recorder: Option<Rc<RefCell<InstructionRecorder>>>,
feature_set: Arc<FeatureSet>,
compute_budget: ComputeBudget,
timings: &mut ExecuteDetailsTimings,
timings: &mut ExecuteTimings,
sysvars: &[(Pubkey, Vec<u8>)],
blockhash: Hash,
lamports_per_signature: u64,
@@ -134,15 +134,17 @@ impl MessageProcessor {
&instruction_accounts,
program_indices,
&mut compute_units_consumed,
timings,
);
time.stop();
timings.accumulate_program(
timings.details.accumulate_program(
instruction.program_id(&message.account_keys),
time.as_us(),
compute_units_consumed,
result.is_err(),
);
timings.accumulate(&invoke_context.timings);
timings.details.accumulate(&invoke_context.timings);
timings.execute_accessories.process_instructions_us += time.as_us();
result
.map_err(|err| TransactionError::InstructionError(instruction_index as u8, err))?;
}
@@ -264,7 +266,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,
@@ -305,7 +307,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,
@@ -338,7 +340,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,
@@ -464,7 +466,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,
@@ -498,7 +500,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,
@@ -529,7 +531,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,
@@ -602,7 +604,7 @@ mod tests {
None,
Arc::new(FeatureSet::all_enabled()),
ComputeBudget::new(),
&mut ExecuteDetailsTimings::default(),
&mut ExecuteTimings::default(),
&[],
Hash::default(),
0,