Synthesizing Efficient Super-Instruction Sets for Ethereum Virtual Machine
summary
Automated pipeline traces EVM basic blocks, applies the recursive pair algorithm to produce a grammar of frequent instruction sequences, and uses a greedy, overlap-aware selection with incremental frequency/height updates to synthesize super-instructions into a generated interpreter via a meta-compiler. Evaluation reports dispatch-reduction as the metric, finds a best configuration of 200 super-instructions giving an 8.45% speedup, while 2000 entries cause code-cache misses and slowdowns (7.4 MB vs 1.3 MB L1).
AI-written summary · about
chapters (9)
- 0:00Super instructions intro
- 1:47Automatic selection challenges
- 3:11Recursive pair compression
- 6:00EVM tracing system
- 8:32Selection with overlap handling
- 13:17Synthesizing EVM super instructions
- 16:12Runtime application
- 16:55Experimental results
- 22:00Conclusion and future
related talks
18mSuperStack: Superoptimization of Stack-Bytecode via Greedy, Constraint-Based, and SAT(…)
15mHieraSynth: A Parallel Framework for Complete Super-Optimization with Hierarchical(…)
29mAutomatically Generated Supernodes for AST Interpreters Improve Virtual-machine P...
21mSynthesizing Formal Semantics from Executable Interpreters
14mDataflow-Based Pruning for Speeding up Superoptimization
23mGenerating EVM Bytecode from Yul in the new via IR Pipeline
30mHow to solve stack too deep errors: a Yul to EVM pipeline
22mAlgorithm-Aware Hardware Optimization using E-Graph Rewriting: how should we marry(…)
