pith:QPK55XOE
ReCoVer: Resilient LLM Pre-Training System via Fault-Tolerant Collective and Versatile Workload
ReCoVer keeps the per-iteration gradient distribution identical to failure-free LLM pre-training by holding microbatch count constant after any GPU losses.
arxiv:2605.11215 v2 · 2026-05-11 · cs.DC · cs.AI
Add to your LaTeX paper
\usepackage{pith}
\pithnumber{QPK55XOEOCON22UGJKKJS3DQKV}
Prints a linked badge after your title and injects PDF metadata. Compiles on arXiv. Learn more · Embed verified badge
Record completeness
Claims
ReCoVer successfully preserves the training trajectory from a failure-free reference despite of 256 GPUs lost spread across the run. For comparison with checkpoint-and-restart baselines, ReCoVer demonstrates 2.23× higher effective throughput after successive failures. This advantage results in ReCoVer processing 74.9% more tokens at 234 GPU-hours.
The assumption that maintaining a constant number of microbatches per iteration across survivors, combined with the fault-tolerant collectives and in-step recovery, produces gradients that are stochastically equivalent to a failure-free run without introducing bias or divergence over long training.
ReCoVer uses fault-tolerant collectives, in-step recovery, and dynamic microbatch redistribution to maintain training trajectory equivalence under GPU failures, delivering 2.23x higher effective throughput than checkpoint-restart on up to 512 GPUs with 256 failures.
Formal links
Receipt and verification
| First computed | 2026-05-25T02:01:23.073962Z |
|---|---|
| Builder | pith-number-builder-2026-05-17-v1 |
| Signature | Pith Ed25519
(pith-v1-2026-05) · public key |
| Schema | pith-number/v1.0 |
Canonical hash
83d5deddc4709cdd6a864a94996c7055788aa593dd016cfe512bacfeae05da21
Aliases
· · · · ·Agent API
Verify this Pith Number yourself
curl -sH 'Accept: application/ld+json' https://pith.science/pith/QPK55XOEOCON22UGJKKJS3DQKV \
| jq -c '.canonical_record' \
| python3 -c "import sys,json,hashlib; b=json.dumps(json.loads(sys.stdin.read()), sort_keys=True, separators=(',',':'), ensure_ascii=False).encode(); print(hashlib.sha256(b).hexdigest())"
# expect: 83d5deddc4709cdd6a864a94996c7055788aa593dd016cfe512bacfeae05da21
Canonical record JSON
{
"metadata": {
"abstract_canon_sha256": "bc2338b3a12770977420da8129c7e8404ca43f5fe48360a1c4d2aa3f6349b47c",
"cross_cats_sorted": [
"cs.AI"
],
"license": "http://creativecommons.org/licenses/by-nc-sa/4.0/",
"primary_cat": "cs.DC",
"submitted_at": "2026-05-11T20:28:31Z",
"title_canon_sha256": "91e4fbfce92febf85a941d4a82beae08b28fc6555cf7a0e0e3d3ff02ac94ab6b"
},
"schema_version": "1.0",
"source": {
"id": "2605.11215",
"kind": "arxiv",
"version": 2
}
}