GitSwarm: Decentralized Compounding Inference
Organizations: Meta Superintelligence Labs · Mila - Québec AI Institute · Université de Montréal · Columbia University ·
Abstract
Long-horizon problem solving and scientific research require computation to accumulate across successive attempts. Partial solutions, experimental findings, and unsuccessful approaches can inform later work, yet most inference-time computation is organized around individual trajectories or candidates rather than a persistent body of reusable work. We call this paradigm compounding inference: organizing inference-time computation so that intermediate work persists and can be inspected, extended, combined, or challenged by subsequent computation. We instantiate compounding inference in GitSwarm, an asynchronous system where homogeneous agents independently decide how to advance a task while collaborating through structured persistent memory. Agents explore, experiment, verify, refine, and synthesize previous work in a shared, branch-able Git repository. Atomic commits preserve intermediate artifacts, while explicit semantic dependencies record how later contributions build on work across branches. We evaluate GitSwarm on long-horizon problem solving and sustained GPU-backed experimental research. On IMOProofBench-Advanced, GitSwarm solves all 30 problems in one run using GPT-5.5. On ProgramBench, it achieves a mean score, versus for the strongest reported baseline under the stated budget. On three neural architecture research tasks (Residual Matrix Transformer, Looped Transformer, NanoChat), GitSwarm improves upon the starting architectures through successive experimentation. Beyond final performance, we measure whether computation accumulates: on ProgramBench, of contributions are subsequently built upon, while the selected solution's ancestry covers of the contribution graph. These results show that inference-time computation can accumulate across otherwise independent episodes, forming an evolving body of work that subsequent inference can reuse.
Figures & tables
Appendix figures & tables30 assets
Supplementary material from the paper’s appendix.
Appendix
| System | Retained state | Alternative paths | Recorded dependencies | Next-work control |
|---|---|---|---|---|
| ToT; LATS ( Yao et al., 2023 ; Zhou et al., 2024 ) | Search states | Reasoning tree | Search edges | Search policy |
| Reflexion; ExpeL ( Shinn et al., 2023 ; Zhao et al., 2024 ) | Reflections and experiences | Successive attempts | Episode or insight memory | Individual agent |
| MetaGPT; AutoGen ( Hong et al., 2024 ; Wu et al., 2023 ) | Messages and task artifacts | Configured interactions | Workflow and messages | Roles or configured dialogue |
| GPTSwarm ( Zhuge et al., 2024 ) | Executable agent graph | Graph variants | Operation-level edges | Graph optimizer |
| AgentGit ( Li et al., 2025 ) | Versioned workflow states | Rollback and branches | State lineage | Application workflow |
| CAID ( Geng and Neubig, 2026 ) | Git worktrees and commits | Parallel branches and merges | Code integration lineage | Central delegator |
| System | Shared memory | Durable branches | Self- directed | No fixed roles | Async workers | Cross-branch deps. | Separate sources |
|---|---|---|---|---|---|---|---|
| MetaGPT ( Hong et al., 2024 ) | – | – | – | – | – | – | – |
| AutoGen ( Wu et al., 2023 ) | – | – | |||||
| AgentGit ( Li et al., 2025 ) | – | – | |||||
| CAID ( Geng and Neubig, 2026 ) | – | – | – | ||||
| SwarmResearch ( Virk et al., 2026 ) | – | – | – | – | |||
| GitSwarm |
| Language | Tasks |
|---|---|
| C (8) | abishekvashok__cmatrix.5c082c6 , arq5x__bedtools2.dd57059 , chirlu__sox.42b3557 , ffmpeg__ffmpeg.360a402 , jqlang__jq.b33a763 , lua__lua.c6b4848 , sqlite__sqlite.839433d , universal-ctags__ctags.243595e |
| C++ (3) | gromacs__gromacs.665ea4c , halitechallenge__halite.822cfb6 , osgeo__gdal.0847f12 |
| Go (11) | ariga__atlas.6d81150 , cheat__cheat.b8098dc , dundee__gdu.ede21d2 , incu6us__goimports-reviser.81bd549 , mgechev__revive.201451e , multiprocessio__dsq.c3ae0ba , noborus__ov.b96c2ba , noborus__trdsql.d8c5ff6 , psampaz__go-mod-outdated.bb79367 , segmentio__chamber.5f93f5f , sheepla__pingu.926d475 |
| Haskell (1) | jgm__pandoc.5caad90 |
| Java (1) | stathissideris__ditaa.f2286c4 |
| Rust (26) | agourlay__zip-password-finder.704700d , alexpovel__srgn.89f943b , bensadeh__tailspin.6278437 , brocode__fblog.3b54330 , burntsushi__ripgrep.3b7fd44 , burntsushi__xsv.f430466 , cordx56__rustowl.655bc5c , crowdagger__crowbook.ea214d7 , dalance__amber.69a0f52 , dandavison__delta.acd758f , isona__dirble.e2dea9f , jrnxf__thokr.09375ef , nachoparker__dutree.44e877d , nikolassv__bartib.6b9b5ce , o2sh__onefetch.e5958ce , oppiliappan__statix.e9df54c , parcel-bundler__lightningcss.aa2ed1e , rhysd__kiro-editor.4157485 , shashwatah__jot.a92aad8 , simeg__eureka.df3796c , sirwart__ripsecrets.34c9e03 , sitkevij__hex.61ae69b , trasta298__keifu.3331426 , wfxr__code-minimap.0ddeea5 , wgunderwood__tex-fmt.3f1aef6 , xampprocky__tokei.505d648 |
| Sweep | Value | Shared persistent | Independent, | Independent, |
|---|---|---|---|---|
| ( ) | 4 | |||
| 8 | ||||
| 12 | ||||
| 16 | ||||
| 32 | ||||
| ( ) | 4 |
| Sweep | Varied values | Fixed values | Archive sizes | |
|---|---|---|---|---|
| Depth | ||||
| Ambiguity | ||||
| Fan-out |
| Mechanism | What it does |
|---|---|
| Depth-scaling fix | Removes the reference’s division of attention scores by the layer index. |
| Tied embeddings | Shares input and output token embeddings; freed parameters widen the feed-forward layers. |
| SwiGLU feed-forward | Replaces the GELU feed-forward layer with a gated one of equal size. |
| Cross-head router | A zero-initialized learned mixing of attention scores across heads before the softmax. |
| Wider attention | Decouples the number of attention heads from the memory rank and widens it (16 32 64). |
| Temporal memory mixer | Adds gated copies of the memory states of the 1, 2, 4 and 8 previous tokens. |
| Family | Commits | +/ | Outcome | Note |
|---|---|---|---|---|
| Attention depth-scaling fix | 4 | 3/1 | In final model | adopted in final model |
| Tied embeddings / token interface | 7 | 3/4 | In final model | adopted in final model |
| Gated MLP (SwiGLU) variants | 7 | 4/3 | In final model | adopted in final model |
| Cross-rank attention router | 6 | 5/1 | In final model | adopted in final model |
| Attention (and MLP) rank widening | 9 | 7/2 | In final model | adopted; widened to rank 64 |
| Multi-lag causal matrix mixing | 13 | 2/11 | In final model | adopted; 9 later variants rejected |
| Mechanism | Origin |
|---|---|
| Depth-scaling fix | Written on the solution path (0.6 h). |
| Tied embeddings | Written on the solution path (1.8 h). |
| SwiGLU feed-forward | Side branch (0.8 h); ported into the path at 5.9 h. |
| Cross-head router | Side branch (5.2 h), validated at full size at 15.1 h; ported at 34.6 h. |
| Wider attention | Side branch (8.2 h), validated at full size at 23.6 h; ported at 53.1 h. |
| Temporal memory mixer | Side branch (50.8 h), generalizing a refuted single-token version (1.2 h); ported at 65.9 h. |
| Family | Commits | Neg. | Evals | Outcome |
|---|---|---|---|---|
| Feed-forward re-injection adapter | 13 | 0 | 20 | In final model |
| Adapter capacity and placement variants | 37 | 27 | 0 | Refuted |
| Gate on the recurrent state | 32 | 15 | 10 | Early leader; gain vanished at 124M/188M |
| Variants of the re-injected signal | 43 | 23 | 1 | Refuted |
| Attention to the input / first core block | 58 | 18 | 11 | Early versions refuted; later ones in progress |
| Parallel specialist feed-forward branches | 66 | 17 | 13 | Beat the adapter at 52M; stalled at larger sizes |
| Benchmark | Category | Role |
| ProgramBench | Captured evidence | Raw outputs, logs, diffs, snapshots, or transcripts from executions. |
| ProgramBench | Human-readable findings | Prose that records an observed behavior, diagnosis, or validation result. |
| ProgramBench | Exploratory probe | Executable experiment used to discover unknown behavior. |
| ProgramBench | Validation harness | Repeatable executable check for an understood behavior or implementation. |
| ProgramBench | Input fixture | Input or corpus created to exercise candidate behavior. |
| ProgramBench | Artifact documentation | Index or instructions for using an artifact collection. |
| ProgramBench | IMOProofBench-Advanced | ||
|---|---|---|---|
| Budget | Runs with artifacts | Budget | Runs with artifacts |
| – | – | B20 | 21/30 |
| B100 | 30/50 | B40 | 20/30 |
| B200 | 30/50 | B80 | 19/30 |
| B300 | 35/50 | B120 | 23/30 |
| B500 | 37/50 | B160 | 20/30 |
| Benchmark | Category | Operational description |
|---|---|---|
| ProgramBench | Bootstrap | Creates an initial runnable candidate. |
| Capability expansion | Adds a previously missing behavior or interface. | |
| Candidate synthesis | Combines useful behavior from multiple candidates. | |
| Fidelity repair | Corrects an existing behavior against task evidence. | |
| Empirical validation | Builds or runs focused tests and probes whose main contribution is evidence. | |
| Candidate selection | Compares or nominates existing candidates. |
| Configuration | Score (%) | (pp) | Runtime (min) |
|---|---|---|---|
| Execution schedule | |||
| Asynchronous (default) | — | 38.0 | |
| Synchronous waves | 49.3 | ||
| Candidate selection | |||
| Decentralized nomination (default) | — | 38.0 | |
| Central selector | 34.9 | ||
| Setup | System prompt | After user prompt | User prompt |
|---|---|---|---|
| ProgramBench, Codex (GPT-5.5-high) workers | Global + ProgramBench addendum | Codex transport override | ProgramBench |
| ProgramBench, GPT-5.5 workers | Global + ProgramBench addendum | — | ProgramBench |
| IMOProofBench-Advanced, Gemini-3.1-Pro workers | Global + IMOProofBench addendum + sequential shell-interaction extension | — | IMOProofBench |
| RMT, Codex (GPT-5.6-sol xHigh) workers | Global a + RMT addendum | Codex transport override b | Task description c |
| Looped Transformer, Codex (GPT-5.5 High or GPT-5.6-sol xHigh) workers | Global a + Loop addendum | Codex transport override b | Task description c |
Inference-Time Scaling
Inference-time scaling studies how extra computation during deployment can improve model performance through search, sampling, verification, or adaptive reasoning.
See all 115 papers