Two optimizations:
1. Dual CUDA graph: graph_forward_mse skips C51 loss/grad/SAXPY blend
during MSE warmup (c51_alpha=0). Eliminates 7 kernel invocations
from the graph replay. replay_forward() routes by alpha automatically.
2. NaN-safe dqn_scale_f32_kernel: writes 0.0 directly when alpha==0
instead of multiplying (IEEE 754: 0*NaN=NaN). Defense-in-depth for
the C51 gradient buffer which can contain NaN from random logits.
Fold 3 epoch: 5.08s → 4.92s (under 5s target).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>