nimbus-eth1/nimbus/core/tx_pool/tx_tasks
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
..
tx_add.nim Workaround for disallowed transaction superseding (#2181) 2024-05-28 13:38:57 +07:00
tx_bucket.nim Silence compiler gossip after nim upgrade (#1454) 2023-01-30 22:10:23 +00:00
tx_classify.nim Introduce wrapper type for EIP-4844 transactions (#2177) 2024-05-15 10:07:59 +07:00
tx_dispose.nim Silence compiler gossip after nim upgrade (#1454) 2023-01-30 22:10:23 +00:00
tx_head.nim Introduce wrapper type for EIP-4844 transactions (#2177) 2024-05-15 10:07:59 +07:00
tx_packer.nim Speed up account ledger a little (#2279) 2024-06-02 21:21:29 +02:00
tx_recover.nim Introduce wrapper type for EIP-4844 transactions (#2177) 2024-05-15 10:07:59 +07:00