Skip to content

Commit 5bbfc65

Browse files
rodrigo-oCopilot
andauthored
feat(l1): upgrade execution breakdown pie chart and add new panels (#5220)
**Motivation** We needed more granular panels to analyze the breakdown of execution for performance decisions. **Description** This PR use the current instrumentation to: - Update the pie char of execution - Add a diff measurement between execution and merkleization to understand the work of the `execute_block_pipeline` function - Add a deagregated series by block showing the different instrumentations available today - Maintain all of them in the previous Block Execution Breakdown row and repeat them vertically across instances <img width="1910" height="705" alt="image" src="https://github.com/user-attachments/assets/0af6dfda-41b3-46f0-8463-1494c6ea0c8b" /> **Note for running it locally:** _After #5088 we needed to re-labeling our local instances to avoid duplicated panels that repeat across instances. This requires prometheus to be restarted to pick up the new labeling, one way to check this out is make look at intances, if `ethereum-metrics-exporte` appears there, we need to restart prometheus, only `localhost` should be there locally._ | Bad (needs restarting prometheus)| Good | | --- | --- | | <img width="359" height="156" alt="image" src="https://github.com/user-attachments/assets/7c4bfd32-f565-4a79-bea9-86094128bfcf" /> | <img width="453" height="176" alt="image" src="https://github.com/user-attachments/assets/8e8423ec-3830-461f-94ab-697bd5967968" /> | **Next steps:** - Naming is not optimal, but changing it would require breaking the panel for instances not updated to this PR. We want first to test it with all instances and make sure the panels are useful and change the names afterwards, here is an issue for tracking that: #5219 Closes #5218 --------- Co-authored-by: Copilot <[email protected]>
1 parent ee07397 commit 5bbfc65

File tree

5 files changed

+429
-106
lines changed

5 files changed

+429
-106
lines changed

crates/blockchain/blockchain.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -792,6 +792,7 @@ impl Blockchain {
792792
})
793793
}
794794

795+
#[instrument(level = "trace", name = "Block DB update", skip_all)]
795796
pub fn store_block(
796797
&self,
797798
block: Block,

crates/storage/store.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ use std::{
2323
sync::Mutex,
2424
};
2525
use std::{fmt::Debug, path::Path};
26-
use tracing::{debug, error, info, instrument};
26+
use tracing::{debug, error, info};
2727
/// Number of state trie segments to fetch concurrently during state sync
2828
pub const STATE_TRIE_SEGMENTS: usize = 2;
2929
/// Maximum amount of reads from the snapshot in a single transaction to avoid performance hits due to long-living reads
@@ -352,7 +352,6 @@ impl Store {
352352

353353
/// Applies account updates based on the block's latest storage state
354354
/// and returns the new state root after the updates have been applied.
355-
#[instrument(level = "trace", name = "Trie update", skip_all)]
356355
pub fn apply_account_updates_batch(
357356
&self,
358357
block_hash: BlockHash,

crates/storage/store_db/rocksdb.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -808,8 +808,6 @@ impl StoreEngine for Store {
808808
.state_root;
809809
let trie_upd_worker_tx = self.trie_update_worker_tx.clone();
810810

811-
let _span = tracing::trace_span!("Block DB update").entered();
812-
813811
let [
814812
cf_receipts,
815813
cf_codes,

crates/vm/backends/mod.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@ impl Evm {
7373
}
7474
}
7575

76-
#[instrument(level = "trace", name = "Block execution", skip_all)]
7776
pub fn execute_block(&mut self, block: &Block) -> Result<BlockExecutionResult, EvmError> {
7877
LEVM::execute_block(block, &mut self.db, self.vm_type)
7978
}

0 commit comments

Comments
 (0)