Supported GPUs
Key Features
1. Universal Matrix Multiply-Accumulate (UMMA)
UMMA represents a simplified and more efficient matrix multiply instruction:- Simplified programming model
- Improved register efficiency
- Better compiler optimization opportunities
- Unified interface across data types
2. Tensor Memory (TMEM)
Blackwell introduces dedicated on-chip Tensor Memory for improved data locality:- Dedicated high-bandwidth memory
- Optimized for matrix operand storage
- Reduces shared memory pressure
- Hardware-managed coherency
3. Block-Scaled Data Types
Blackwell supports advanced quantization formats:NVIDIA NVFP4
4-bit floating point with block scaling:OCP Standard Formats
Support for Open Compute Project microscaling formats:- MXFP4: 4-bit with shared exponent
- MXFP6: 6-bit with shared exponent
- MXFP8: 8-bit with shared exponent
4. Enhanced FP8 Support
Blackwell improves FP8 tensor operations:5. Sparse Matrix Operations
Enhanced structured sparsity support:Shared Memory Configuration
Different Blackwell variants have different shared memory capacities:SM100 (datacenter) has significantly more shared memory than SM120 (GeForce). Design kernels to be configurable based on available capacity.
Instruction Shapes
Advanced Scheduling
Blackwell introduces sophisticated kernel scheduling:Pingpong Kernel Pattern
Blackwell supports advanced double-buffering patterns:Complete Example: Block-Scaled GEMM
CuTe DSL Support
Blackwell has extensive CuTe DSL support:Performance Optimization
Tile Size Selection
Block Scaling Configuration
TMEM vs Shared Memory
- Use TMEM for matrix operands (A, B)
- Use shared memory for accumulation and epilogue
- Balance allocation based on kernel requirements
Compilation
CUDA Toolkit 13.0 or later is required for SM103 (B300) support. CUDA 12.8 or later supports SM100 (B200) and SM120 (RTX 50 series).
Examples
Blackwell-specific examples:examples/112_blackwell_ssd/- State Space Decomposition on Blackwellexamples/93_blackwell_low_latency_gqa/- Low-latency GQA with cluster reductionexamples/python/CuTeDSL/blackwell/sm103_dense_blockscaled_gemm_persistent.py- Block-scaled GEMMexamples/python/CuTeDSL/blackwell/dense_blockscaled_gemm_persistent.py- SM100 persistent kernel
Known Issues and Limitations
SM100 vs SM120 Differences
See Also
- Hopper Architecture - Previous generation
- Architecture Overview - All architectures
- CuTe DSL Guide
- CUTLASS 4.4 Changelog