nimbus-eth1/nimbus/core/tx_pool
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_chain Fix ForkID calculation 2023-10-25 11:10:01 +07:00
tx_tabs results: use canonical import (#2248) 2024-05-30 14:54:03 +02:00
tx_tasks Speed up account ledger a little (#2279) 2024-06-02 21:21:29 +02:00
tx_chain.nim Simplify AccountsLedgerRef complexity (#2239) 2024-05-29 13:06:49 +02:00
tx_desc.nim remove expicit PoW support from tx pool; tighten tx pool exceptions specs (#2235) 2024-05-28 20:26:51 +02:00
tx_gauge.nim Silence compiler gossip after nim upgrade (#1454) 2023-01-30 22:10:23 +00:00
tx_info.nim TxPool will not pack tx with invalid chainId 2023-11-01 08:56:57 +07:00
tx_item.nim results: use canonical import (#2248) 2024-05-30 14:54:03 +02:00
tx_tabs.nim results: use canonical import (#2248) 2024-05-30 14:54:03 +02:00