Using Equality Saturation and Stochastic Mutations for Molecular Dynamics Code(…)
summary
Prototype framework combines equality saturation with random code mutations to optimize real Python molecular‑dynamics kernels, reproducing algebraic speedups (remove hidden sqrt when only even powers are used) and program restructurings that implement multiple‑time‑stepping by loop splitting and hoisting slow forces (then multiplying by K). Work uses egglog/egglo Python bindings, adds custom dynamic cost functions to prefer cheaper AST shapes, explores e‑graph guided mutations alongside stochastic random mutations, and runs a mutate‑verify loop that already finds known optimizations and yields runnable variants.
AI-written summary · about
chapters (8)
- 0:00Optimizing molecular dynamics
- 1:09Molecular dynamics basics
- 3:38Optimization goals
- 5:46Optimization rules
- 8:17Equivalence for performance
- 13:58Egraph and stochastic mutations
- 17:11Conclusion and future work
- 18:20Q&A
related talks
23mRewrite System Showdown: Stochastic Search vs. EqSat
30megg: Fast and Extensible Equality Saturation
23mLoop Saturation for Scalable High-Level Synthesis
13mMind the Abstraction Gap: Bringing Equality Saturation to Real-World ML Compilers
33mLinear Genetic Programming in Python Bytecode
16mPricing Python Parallelism: A Dynamic Language Cost Model for Heterogeneous Platforms
23mPerformant Dynamically Typed E-Graphs in Pure Julia
17mBayesian Code Diffusion for Efficient Automatic Deep Learning Program Optimization
