FlashBoB: I/O-Efficient Exact Backward-over-Backward for Softmax Attention

flashbob:-i/o-efficient-exact-backward-over-backward-for-softmax-attention

FlashBoB: I/O-Efficient Exact Backward-over-Backward for Softmax Attention

[Submitted on 21 Sep 2026 (v1), last revised 21 Oct 2026 (this version, v2)]

View PDF HTML (experimental)

Abstract:Transformer models built on the attention mechanism have become a central building block in modern deep learning, yet softmax attention remains a major bottleneck for long-context workloads. While FlashAttention makes the forward and first backward passes I/O-efficient, it does not support backward-over-backward (BoB), which enables exact differentiation through the backward pass for applications such as second-order optimization, test-time training, gradient-based memory, and meta-learning. Existing BoB implementations either materialize large intermediate tensors or exhaust GPU memory at long sequence lengths. We present FlashBoB, an exact, I/O-efficient algorithm for BoB in softmax attention that keeps computation within on-chip tiles and avoids all $N times N$ intermediate tensors, where $N$ is the sequence length. The key insight is a hierarchical affine structure in the softmax double backward: two row-wise scalars determine all outputs through affine transformations. This yields a two-pass schedule with bounded on-chip static random-access memory (SRAM) usage and minimal off-chip high-bandwidth memory (HBM) traffic. FlashBoB achieves $Theta(N^2 d^2/M)$ HBM traffic ($d$ is the head dimension and $M$ is the memory size) and, within the standard FlashAttention-style score-recomputation model, matches the inherited large-cache lower bound for exact forward attention. Empirically, it scales exact attention BoB to $N=262text{K}$ on a single A100 80GB GPU, where prior PyTorch exact baselines fail by $N=16text{K}$, and is up to $6.3times$ faster than FlashBack. These results make exact second-order attention practical at long-context sequence lengths where prior implementations cannot run efficiently.

Submission history

From: Mingrui Liu [view email]
[v1] Mon, 21 Sep 2026 04:20:19 UTC (109 KB)
[v2] Wed, 21 Oct 2026 20:29:07 UTC (117 KB)