SAT keeps async RL stable on Qwen3-30B up to 8x policy lag
TL;DR
- SAT-GSPO with R3 scores 35.83 AIME24 avg@8 at lag 1 and holds 34.79 at lag 8 on Qwen3-30B-A3B-Base.
- The method uses the detached sampled log-ratio as a staleness proxy and contracts only the sign-selected endpoint of the PPO interval.
- Experiments run SGLang for inference and Megatron for training, targeting the decoupled rollout-optimization pipeline used in async RL.
Anyone running reinforcement learning on a big model has probably felt this one: the rollout engine and the trainer are decoupled for throughput, the policy the trainer is updating drifts away from the policy that actually generated the samples, and PPO's clipping quietly stops doing the job you thought it was doing. A new paper on arXiv, "Stale but Stable", argues the fix does not need to be architectural. It can be a small, targeted change to the trust region itself.
The authors call their method SAT, for Staleness-Adaptive Trust Region. The framing in the paper is that "training-inference divergence governs approximation error in finite-horizon bounds, whereas PPO clipping only gates sampled outward updates" — in other words, the standard clip is a sampled surrogate, not a full-policy constraint, so as staleness grows it stops protecting you. SAT uses the detached sampled log-ratio as a practical staleness proxy and then contracts only the sign-selected endpoint of the nominal PPO interval, so ordinary tokens are left alone and only the high-mismatch tail gets tightened.
Why this matters if you are not writing an RL trainer: decoupled rollout is how basically every serious post-training pipeline hits acceptable GPU utilization, and MoE routing and engine queues make policy lag structurally worse, not better. Tools that let you tolerate more lag without training destabilizing translate directly into better hardware utilization and shorter wall-clock runs for the same result.
The reported numbers are on Qwen3-30B-A3B-Base, with SGLang for inference and Megatron for training, evaluated on AIME24 avg@8. SAT-GSPO with R3 lands at 35.83 at lag 1 and holds 34.79 at lag 8. Plain SAT-GSPO comes in at 34.17 at lag 1. The paper's own summary is that "aligning clip intervals with staleness heterogeneity effectively stabilizes asynchronous RL."
The honest caveat is that this is one math benchmark on one base model, and "stable up to lag 8" is a specific empirical claim, not a general guarantee. What the paper does not give you is behavior on code or agent RL tasks, cost of the per-token proxy at scale, or where SAT eventually breaks past lag 8. Still, if you already run PPO or GSPO on a decoupled stack, this is the kind of change you can slot into an existing trainer before you go rebuild your rollout scheduler.
Originally reported by paper
Read the original article →Original headline: SAT Keeps Async RL Accurate Under 8x Policy Lag on Qwen3-30B