Skip to content
AI.info

The Pulse

Characters runs in real time on four H100s, Runway says

Runway’s Characters video model now sustains real-time generation on four H100 GPUs per session, the company says. Its research describes serving changes to cache handling and GPU communication.

Characters runs in real time on four H100s, Runway says

AI.info Team · Written with AI · fact-checked ·

Characters runs in real time on four H100s at 159.3ms per step

Runway Research published research on real-time serving for Characters on November 5, 2026. Characters is backed by a roughly 57B-parameter autoregressive video diffusion transformer. At 24 frames per second, the model has to generate a new four-frame chunk of 704x1088 video every 166.7ms for each session.

Characters launched on eight H100s per session. On four H100s, the launch software took 240.9ms per diffusion step, well over the 166.7ms Runway requires. Optimizations brought the step to 159.3ms, which Runway reports as 1.51x faster and sustaining 24.5 fps; a fused communication kernel took it to 147.4ms, or 1.63x faster.

Cache Work Moved to Write Time

Each diffusion step denoises one latent frame through four passes of a 60-block transformer, producing 240 attention calls. Each call reads a cache of 5,788 slots, of which 757 are new. In the original implementation, cache upkeep consumed 69.7ms of a 239.2ms step.

Runway moved rotary position embeddings and FP8 quantization to the moment each new frame enters the cache, and stores the cache as a ring to avoid copying as the window advances. Cache upkeep then fell to 6.2ms per step. Because positions reset every 42 steps, the system applies a single delta rotation to the cached window at each reset; that step takes 263ms, which Runway says the playout buffer absorbs.

GPU Communication and Decoding

Tensor-parallel all-reduce follows every transformer block, 240 times per step. A faster collective alone saved 0.4ms, so Runway fused the reduction with the FP8 matrix multiplication. At the production shape, the fused call takes 153.8µs against 208.2µs, hiding 54-68% of the all-reduce time.

The decoder takes 114ms per step to turn latents into video frames. Runway assigns it its own GPU so it can decode the previous chunk while the next one is denoised; the step period then exceeds diffusion time by 1.6ms. In tests on B200s, sharing one GPU between decoding and diffusion hit the 1,000 W power cap and slowed diffusion kernels by 18-26%.

Quality Checks and a Production Rollback

Runway evaluated changes that affect model numerics against variation between repeated runs, since pixel comparisons in an autoregressive model become meaningless after about 10 seconds as runs diverge. Across 51 scored clips, mean lip-sync differences were at most 0.03, and every 95% interval fell within ±0.08. Four 10-minute sessions showed no difference growing over the session beyond what a rerun produces.

Runway cautions that the results bound the changes rather than prove equivalence. SyncNet is weaker on stylized characters, where intervals were two to five times wider, and four long sessions cannot rule out a slow trend.

The fused kernel entered production in August 2026, then workers began running out of memory after a PyTorch and NCCL upgrade. Runway limited fusion to the steady-state shape and let first forward passes use NCCL, then re-enabled the kernel on October 8, 2026. In the 15 days that followed, 0.7% of sessions lasting at least a second averaged 24 fps or less, compared with 7-23% in each of the five preceding weeks.

Turn Latency and Other GPU Configurations

Across 51 turns traced in 12 live sessions, the median time from the end of a user's speech to the character's voice at the client was 2.13 seconds. The voice agent accounted for 1.42 seconds, while Runway's pipeline from the agent's first audio to the first speaking frame took 0.49 seconds. Delivery to the browser added about 190ms.

Real-time production on three B200s runs at 154.3ms per step, Runway also reports. Its FP8 cache optimization saves 17.0ms on H100s but costs 2.4 to 6.7ms on B200s, where Runway's build has no FP8 attention kernel that takes per-head scales. On eight H100s, Runway says, diffusion takes 118.2ms per step, while each step takes 128.7ms because the single GPU that turns results into video frames cannot keep pace.

Source

Related stories

Explore

More articles