silkworm icon indicating copy to clipboard operation
silkworm copied to clipboard

execution: improve stage Execution according to C API execute functions

Open canepat opened this issue 1 year ago • 0 comments

Since we developed our C API execute functions for Erigon++ (i.e. silkworm_execute_blocks_ephemeral and silkworm_execute_blocks_perpetual), the Execution stage of stand-alone Silkworm fell behind on some design choices:

  1. the Execution stage still uses some rule-of-thumb gas-based accounting to decide when change batch must be flushed, differently from what our C API execute functions and Erigon do
  2. our C API exploits different mechanisms to prefetch the blocks to execute: offloaded prefetching vs inline prefetching
  3. our C API has introduced a convenient BlockExecutor abstraction

canepat avatar Jun 05 '24 11:06 canepat