Batching the Reflective Optimization Loop: Parallel Proposals Make GEPA Faster and Better
Reflective text optimization makes agentic systems better, but the optimization loop is itself a resource-hungry workload whose sequential structure leaves parallel evaluation capacity idle. We extend the open-source GEPA optimizer to propose and evaluate a batch of candidates on each optimization step instead of one candidate at a time. In our sweep on two tasks, most batched runs finished in half the wall-clock time or less, and the fastest in about a quarter to a third. Batched settings also achieved higher held-out test scores, from 68.9% to 72.1% on LiveBench-Math (with $2\times2$) and from 49.0% to 60.0% on HoVer (with $8\times1$). A simple runtime model explains the measured speedups under a finite worker pool, and batched settings also spend their metric-call and dollar budgets more efficiently. We frame the axes along which a reflective optimization step can scale in parallel, a first look at allocating a fixed optimization budget across them.
Authors
- Dan Klein (ORCID: https://orcid.org/0000-0002-8881-1902)
- Matei Zaharia (ORCID: https://orcid.org/0000-0002-7547-7204)
- Alexandros G. Dimakis (ORCID: https://orcid.org/0000-0002-4244-7033)
- Koushik Sen (ORCID: https://orcid.org/0000-0002-4539-9188)
- Lutfi Eren Erdogan
- Lakshya A Agrawal (ORCID: https://orcid.org/0000-0003-0409-8212)
- Donghyun Lee
- Shangyin Tan
- Jialin Zhang
Publication Details
- Journal
- arXiv (Cornell University)
- Published
- 2026-10-27
- DOI
- https://doi.org/10.48550/arxiv.2610.36774
- Primary Topic
- Evolutionary Algorithms and Applications
- Type
- preprint