Skip to content

Speed up synthesis fitness evaluation - #502

Open
alcides wants to merge 1 commit into
masterfrom
perf/fitness-eval-optimizations
Open

Speed up synthesis fitness evaluation#502
alcides wants to merge 1 commit into
masterfrom
perf/fitness-eval-optimizations

Conversation

@alcides

@alcides alcides commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add aeon/synthesis/fitness_eval.py with prefix pre-binding, bundled expression-goal evaluation, and LRU fitness memoization keyed by term hash.
  • Wire bundled fitness through EvaluationPool workers so multiple @minimize goals share one interpreter walk on the suffix chain instead of re-evaluating the full program per goal.
  • Optimize @property fitness by pre-building call spines and reusing prefix-bound evaluation contexts.

Test plan

  • pytest tests/synth_fitness_test.py tests/property_fitness_test.py tests/optimization_decorators_test.py
  • Pre-commit on changed files

Made with Cursor

…fix binding.

Pre-bind static program prefixes, fuse expression goals into one interpreter
walk, memoize duplicate phenotypes, and reuse pre-built property call spines.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor
cursor Bot force-pushed the perf/fitness-eval-optimizations branch from ef720a0 to 51f81fc Compare September 3, 2026 03:03
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.

1 participant