FlashAttention Unsupported GPU Architecture
FlashAttention v2 heavily optimizes memory access and matrix multiplication using specific hardware features introduced in NVIDIA's Ampere architecture (Compute Capability 8.0+), such as asynchronous memory copies and specific Tensor Core instructions. Older architectures (Volta, Turing) lack these hardware features, making the optimized CUDA kernels impossible to run.
FlashAttention v2 heavily optimizes memory access and matrix multiplication using specific hardware features introduced in NVIDIA's Ampere architecture (Compute Capability 8.
- Symptom
RuntimeError: FlashAttention only supports Ampere GPUs or newer.- Root cause
- FlashAttention v2 heavily optimizes memory access and matrix multiplication using specific hardware features introduced in NVIDIA's Ampere architecture (Compute Capability 8.0+), such as asynchronous memory copies and specific Tensor Core instructions. Older architectures (Volta, Turing) lack these hardware features, making the optimized CUDA kernels impossible to run.
- Recommended fix
- Fallback to PyTorch's scaled_dot_product_attention (SDPA) with math backend, or upgrade hardware with torch.backends.cuda.sdp_kernel(enable_flash=False, enable_math=True, enable_mem_efficient=True): \n out = F.scaled_dot_product_attention(q, k, v) Disabling the FlashAttention backend forces PyTorch to use a compatible, albeit slower, memory-efficient or math backend for attention.
- How Denpex helps
- Denpex investigates FlashAttention Unsupported GPU Architecture using the evidence you provide or your connected workload collects. Earlier rank, host or application evidence is needed to distinguish an initiating failure from a downstream report.
What this failure is
FlashAttention Unsupported GPU Architecture is a Hardware failure seen during ML training runs. FlashAttention v2 heavily optimizes memory access and matrix multiplication using specific hardware features introduced in NVIDIA's Ampere architecture (Compute Capability 8.0+), such as asynchronous memory copies and specific Tensor Core instructions. Older architectures (Volta, Turing) lack these hardware features, making the optimized CUDA kernels impossible to run. Common tags: Architecture Mismatch.
Is this what broke your run? Paste your log.
You're reading about FlashAttention Unsupported GPU Architecture. Paste your own traceback and relevant evidence for an investigation of your workload, with a next action or a specific missing fact. A reference entry does not establish your cause. No account or card for the free diagnosis. Review data handling before submitting sensitive logs.
Before uploading, review cloud data handling and local options.
Upload your log file. Large files are processed in your browser. Only selected evidence is submitted when you run diagnosis.
Why it happens (the mechanism)
The user might have installed the correct CUDA and PyTorch versions, so they assume their software stack is correct. The failure is purely hardware-bound, which isn't always obvious if the cloud provider just allocated a 'GPU instance' without specifying the architecture.
What you'll observe
- RuntimeError: FlashAttention only supports Ampere GPUs or newer.
- NotImplementedError: FlashAttention is not supported for this GPU architecture.
Common symptoms and what they mean
| Symptom | Why it happens |
|---|---|
| Code runs fine on a modern GPU (like A100 or RTX 3090) but crashes when migrated to an older GPU (like V100 or T4). | FlashAttention v2 heavily optimizes memory access and matrix multiplication using specific hardware features introduced in NVIDIA's Ampere architecture (Compute Capability 8.0+), such as asynchronous memory copies and specific Tensor Core instructions. Older architectures (Volta, Turing) lack these hardware features, making the optimized CUDA kernels impossible to run. |
Which systems are affected
- CUDA
- FlashAttention
- Hardware
How to confirm this is the problem
Use this checklist to test the hypothesis against a small reproduction. No single line proves the root cause, so preserve the preceding events and compare one variable at a time.
- ✓Check GPU model using `nvidia-smi`.
- ✓Check compute capability using `python -c 'import torch; print(torch.cuda.get_device_capability())'`.
- ✓If the compute capability is < 8.0 (e.g., 7.5 for T4, 7.0 for V100), FlashAttention 2 is not supported.
Root cause
- FlashAttention v2 heavily optimizes memory access and matrix multiplication using specific hardware features introduced in NVIDIA's Ampere architecture (Compute Capability 8.0+), such as asynchronous memory copies and specific Tensor Core instructions. Older architectures (Volta, Turing) lack these hardware features, making the optimized CUDA kernels impossible to run.
The fix and how to prevent it
Searchable error signature
RuntimeError: FlashAttention only supports Ampere GPUs or newer.Use this text as a lookup key in logs and upstream issue trackers. It is not presented as a captured customer log. Confirm the cause from your own preceding events, versions, configuration and the cited references.
The fix and the prevention pattern
The root cause is on this page and stays free. A free account adds the exact remediation steps, saved history, and the fix on every entry in the encyclopedia.
Sign up free. Unlock the full analysisNo credit card. Daily allowance follows verified trust tier. Instant access.
Diagnose this failure in VS Code
Select the traceback or open the failed terminal, then run Denpex locally to see the initiating rank, collateral failures, exact fix, and verification command without uploading the log.
Install the free VS Code extensionReferences
Don't just read the fix, diagnose your run
The encyclopedia tells you what went wrong. Denpex tells you what went wrong in YOUR training run. With your logs, your config, and your stack.