## Issue Addressed NA ## Proposed Changes This PR removes duplicated block root computation. Computing the `SignedBeaconBlock::canonical_root` has become more expensive since the merge as we need to compute the merke root of each transaction inside an `ExecutionPayload`. Computing the root for [a mainnet block](https://beaconcha.in/slot/4704236) is taking ~10ms on my i7-8700K CPU @ 3.70GHz (no sha extensions). Given that our median seen-to-imported time for blocks is presently 300-400ms, removing a few duplicated block roots (~30ms) could represent an easy 10% improvement. When we consider that the seen-to-imported times include operations *after* the block has been placed in the early attester cache, we could expect the 30ms to be more significant WRT our seen-to-attestable times. ## Additional Info NA |
||
|---|---|---|
| .. | ||
| attestation_performance.rs | ||
| attester_duties.rs | ||
| block_id.rs | ||
| block_packing_efficiency.rs | ||
| block_rewards.rs | ||
| database.rs | ||
| lib.rs | ||
| metrics.rs | ||
| proposer_duties.rs | ||
| publish_blocks.rs | ||
| state_id.rs | ||
| sync_committees.rs | ||
| validator_inclusion.rs | ||
| version.rs | ||