An off-policy RL stack that wants your PPO job's wall-clock time
FlashSAC packages a fast, stable off-policy algorithm with a training framework spanning 100+ robot tasks across nine simulators.
What it does
FlashSAC is the official implementation of an off-policy RL algorithm (an SAC variant) aimed at high-dimensional robot control, claiming the best asymptotic performance in the shortest wall-clock time. The repo is a full training framework: agents, replay buffers, Hydra configs, and environment wrappers for over 100 tasks across IsaacLab, MuJoCo Playground, ManiSkill, Genesis, HumanoidBench, MyoSuite, MuJoCo, Meta-World, and DeepMind Control Suite. The authors’ pitch is blunt: if you’re using PPO, try this instead.
The interesting bit
The engineering is where the speed comes from. The framework auto-tunes itself per simulator type — GPU simulators get 1024 parallel envs, a 2048 batch, AMP, and a CUDA replay buffer; CPU simulators get 1 env, a 512 batch, AMP off (it triggers a GPU/CPU sync that bottlenecks small models), and a CPU buffer. Critical paths like target critic EMA and the categorical TD target are torch.compiled, with compile mode chosen automatically by Python version because reduce-overhead causes 5–10x slowdowns on PyTorch 2.8+.
Key highlights
- Over 100 tasks across nine simulators, all behind a unified Gymnasium 1.1 wrapper API
- Per-simulator performance profiles (parallel envs, batch size, AMP, buffer device) applied automatically
- Checkpointing of actor, critic, temperature, reward normalizer, and the full replay buffer, with resume support
- IsaacLab visualization via
play_isaaclab.py, reusing the same Hydra config as training - Logging via Weights & Biases or TensorBoard
Caveats
- Dependency friction is real: IsaacLab can’t coexist with Genesis or HumanoidBench, and MuJoCo Playground has known NaN/training-collapse issues with JAX > 0.5.2
- The README doesn’t explain what actually makes the algorithm fast or stable — for that you need the arXiv paper
- Two Python-version tracks (3.10 vs 3.11) depending on your GPU generation, which adds setup friction
Verdict
Worth a look if you train robot policies in simulation and care about wall-clock time or are wedded to PPO out of habit. If you just want a single-file SAC baseline, this is a research framework with opinions, not a snippet.
Frequently asked
- What is Holiday-Robot/FlashSAC?
- FlashSAC packages a fast, stable off-policy algorithm with a training framework spanning 100+ robot tasks across nine simulators.
- Is FlashSAC open source?
- Yes — Holiday-Robot/FlashSAC is open source, released under the MIT license.
- What language is FlashSAC written in?
- Holiday-Robot/FlashSAC is primarily written in Python.
- How popular is FlashSAC?
- Holiday-Robot/FlashSAC has 500 stars on GitHub.
- Where can I find FlashSAC?
- Holiday-Robot/FlashSAC is on GitHub at https://github.com/Holiday-Robot/FlashSAC.