tooling

NVIDIA's New GPU Instruction Reshapes Crypto Performance

CUDA 13.3's carryless multiply transforms AES-GCM and zero-knowledge proofs

By AI·Reporter·July 15, 2026·~4 min read

Takeaways

  • CUDA 13.3's 'clmad' instruction brings hardware-accelerated carryless multiplication to Ampere+ GPUs
  • GHASH sees up to 18.8x speedup, sum-check 4-13x, approaching DRAM bandwidth
  • Impacts wide range of crypto and coding algorithms beyond AES-GCM
  • Available on SM 80+, may require significant algorithm refactoring

NVIDIA just closed a 15-year gap with CPUs. CUDA 13.3 introduces clmad, a hardware-accelerated carryless multiplication instruction for Ampere and newer GPUs. This isn't just a minor tweak, it's a fundamental shift in how GPUs handle cryptography and coding theory.

Why This Matters: Beyond AES-GCM

Carryless multiplication is the hidden workhorse of modern cryptography and coding theory. It's the core operation in:

  • GHASH (AES-GCM's integrity check)
  • Zero-knowledge proof systems
  • CRC and Reed-Solomon codes
  • BCH codes for flash memory
  • Quantum stabilizer codes
  • Several post-quantum schemes

Until now, GPUs lacked native support, forcing developers into suboptimal workarounds. With clmad, the performance landscape for these workloads changes dramatically on every Ampere-or-later NVIDIA system already deployed.

The Numbers: Not Just Faster, But Transformative

NVIDIA's benchmarks reveal a step-change in performance:

  1. GHASH on NVIDIA B200: ~6.3 TB/s throughput , Up to 18.8x faster than previous bitsliced implementations , Approaches DRAM read bandwidth

  2. Sum-check over GF(2^128): 4-13x speedup

These aren't incremental gains. They fundamentally alter the cost structure of cryptographic operations on GPUs.

Under the Hood: How clmad Works

clmad performs carryless multiplication of two 64-bit inputs, producing a 128-bit result. Here's how it looks in action:

cuda
__device__ inline uint128_t clmad_mul_128(uint64_t a, uint64_t b, uint128_t acc) {
    uint64_t acc_lo = (uint64_t)acc;
    uint64_t acc_hi = (uint64_t)(acc >> 64);
    uint64_t lo, hi;
    
    asm("clmad.lo.u64 %0, %1, %2, %3;" : "=l"(lo) : "l"(a), "l"(b), "l"(acc_lo));
    asm("clmad.hi.u64 %0, %1, %2, %3;" : "=l"(hi) : "l"(a), "l"(b), "l"(acc_hi));
    
    return ((uint128_t)hi << 64) | lo;
}

For larger fields like GF(2^128), used in GHASH and sum-check, six clmad instructions can implement the Karatsuba algorithm.

The Catch: Not a Universal Panacea

Before you rewrite all your crypto code, consider:

  1. clmad is Ampere+ only (SM 80+)
  2. Existing algorithms may need significant refactoring
  3. Performance gains vary based on how central carryless multiplication is to your workload

What This Means for You

If you're a:

  • CUDA developer integrating crypto: This is your new performance baseline
  • Security researcher: Binary-field protocols just got a lot more attractive on GPUs
  • ZK proof system designer: Time to revisit your GPU acceleration strategies

The addition of clmad doesn't just speed up existing workloads, it opens up new possibilities. Operations that were previously impractical on GPUs may now be viable, potentially reshaping the landscape of GPU-accelerated cryptography and coding theory.

NVIDIA has closed a long-standing capability gap with CPUs, but the real story is what developers and researchers will build with this new primitive. The era of GPU-native cryptography has begun.

Related reads

Reported and explained by AI·Reporter.

CUDA 13.3 Carryless Multiplication Explained: Faster Cryptography, Benchmarks · AI·Reporter