Skip to content

Conversation

@bbyalcinkaya
Copy link
Member

This PR improves performance by optimizing the substitution algorithm in the fuzzer. Substitutions now target only the <program> cell via the subst_func parameter in fuzz. This prevents the substitution from needlessly traversing these large terms, leading to a 3x speedup in fuzzing.

The speedup was measured using the existing test suite, particularly the FxDAO tests. In cases where the initial state is larger—such as tests involving multiple contracts or bigger contracts—the performance improvement is even more significant.

@bbyalcinkaya bbyalcinkaya marked this pull request as ready for review May 5, 2025 09:48
@bbyalcinkaya bbyalcinkaya requested a review from gtrepta May 5, 2025 09:49
@bbyalcinkaya bbyalcinkaya force-pushed the optimize-subst branch 2 times, most recently from 9ef8fa8 to a3b6f93 Compare October 31, 2025 11:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants