nimbus-eth1/nimbus/sync/protocol
Jacek Sieka 7f76586214
Speed up account ledger a little (#2279)
`persist` is a hotspot when processing blocks because it is run at least
once per transaction and loops over the entire account cache every time.

Here, we introduce an extra `dirty` map that keeps track of all accounts
that need checking during `persist` which fixes the immediate
inefficiency, though probably this could benefit from a more thorough
review - we also get rid of the unused clearCache flag - we start with
a fresh cache on every fresh vmState.

* avoid unnecessary code hash comparisons
* avoid unnecessary copies when iterating
* use EMPTY_CODE_HASH throughout for code hash comparison
2024-06-02 21:21:29 +02:00
..
eth Remove eth/66 and eth/67 wire protocol (#2238) 2024-05-29 09:20:25 +02:00
snap Speed up account ledger a little (#2279) 2024-06-02 21:21:29 +02:00
eth68.nim Introduce wrapper type for EIP-4844 transactions (#2177) 2024-05-15 10:07:59 +07:00
snap1.nim Refactor protocol handlers exception handling (#2037) 2024-02-19 18:46:48 +07:00
trace_config.nim Prep for full sync after snap make 3 (#1270) 2022-10-19 11:04:06 +01:00