Replace 10 individual `spectral_norm_kernel` launches (each grid=(1,1,1))
with a single `spectral_norm_batched` launch (grid=(10,1,1)) that processes
all weight matrices in parallel across 10 blocks.
- Build descriptor buffer at construction (10 × 6 u64 entries with W/u/v
pointers, out_dim, in_dim per matrix) — pointers are stable
- Delete `spectral_norm_kernel` from dqn_utility_kernels.cu (replaced by
`spectral_norm_batched` which was already written)
- Remove spec_norm! macro and per-matrix launch loop
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>