All stories

NVIDIA open-sources Reshard collective for RL weight refit

NVIDIA has released NCCL M2N Reshard, an open-source collective that speeds up how RL post-training pipelines copy updated weights from training GPUs to inference GPUs, a step that can move about 10 TB per training step at frontier scale.

NVIDIA described a new type of collective communication call, called Reshard, built mainly to speed up "refit" in reinforcement learning post-training. Refit is the regular transfer of updated policy weights from training GPUs to separate inference GPUs in disaggregated setups. A reference implementation, NCCL M2N Reshard, is available in the NVIDIA/nccl-extensions GitHub repo.

The problem is the common gather-and-broadcast method. Training GPUs all-gather each parameter into a full tensor and broadcast it to the inference GPUs. Each inference GPU then keeps only the shard it needs. Every inference GPU therefore receives the full parameter even when it needs only part of it, so the payload is roughly twice the model's weight size. NVIDIA gives two examples, assuming BF16 weights: about 11.2 TB per refit for Kimi K3 (2.8 trillion parameters) and about 9.6 TB for Qwen 3.8 2.4T A95B. Refit runs at every training step.

NVIDIA's approach treats refit as resharding a PyTorch distributed tensor (DTensor). The training layout is the source and the inference layout is the destination. Each layout is defined by the tensor's global shape, its device mesh and its placements. From the overlap between source and destination shards, the system can work out which region each source GPU sends to each destination. The goal is to move only the minimum data needed, even when the two sides use different parallelism schemes and GPU counts or hold replicated copies.

The material provided also says Reshard has been integrated into NeMo RL and that refit runs 2.7–5.7x faster. The excerpt cuts off before the benchmark details, so the configurations behind those numbers are not described here.

Sources