Run OpenAI's Whisper speech-to-text model on AMD GPUs on Windows with zero CUDA dependency. This guide covers two GPU acceleration paths plus CPU fallback, tested on RX 5700 XT (gfx1010 / RDNA1).
Whisper is OpenAI's open-source speech recognition model trained on 680,000 hours of multilingual audio. It transcribes audio to text with high accuracy across 99 languages and handles diverse audio conditions (accents, background noise, technical language).
- No CUDA lock-in: RDNA cards work on Windows via DirectML (any DX12 GPU) or ROCm (RDNA1+ only)
- Cost-effective: RX 6700 XT ~$300; equivalent NVIDIA RTX 3070 Ti $400–500
- Sufficient VRAM: RX 5700 XT (8GB) → runs
largemodel; RX 6600 XT (16GB) → runslarge-v3with headroom - Real transcription speedup: ~8–12x realtime on medium model vs ~0.5x CPU realtime
| Method | GPU Support | Windows | Difficulty | Speed | Notes |
|---|---|---|---|---|---|
| A: faster-whisper + DirectML | Any AMD DX12 (RDNA, Polaris, Vega) | ✓ | Easiest | 8–12x realtime | Recommended — works on all AMD cards |
| B: whisper.cpp GPU | RDNA1+ only (ROCm via comfyui-rocm) | ✓ | Moderate | 10–15x realtime | Requires ROCm environment from comfyui-amd-windows-setup |
| C: CPU fallback | Any | ✓ | Trivial | 0.3–0.5x realtime | For testing or low-VRAM fallback |
| AMD GPU Family | Architecture | gfx Code | Method A (DirectML) | Method B (ROCm) | Tested |
|---|---|---|---|---|---|
| RDNA4 (2025+) | RDNA4 | gfx1201+ | ✓ Full | ✓ Full | Not yet |
| RX 7000 | RDNA3 | gfx1100–gfx1102 | ✓ Full | ✓ Full | Not yet |
| RX 6000 | RDNA2 | gfx1030–gfx1102 | ✓ Full | ✓ Full | Community reports ✓ |
| RX 5000 | RDNA1 | gfx1010–gfx1012 | ✓ Full | ✓ Full | RX 5700 XT (gfx1010) ✓ |
| RX Vega | Vega | gfx900/906 | ✓ DirectML only | ✗ No ROCm | Not tested |
| RX Polaris | Polaris | gfx803 | ✓ DirectML only | ✗ No ROCm | Not tested |
DirectML works on any AMD GPU with DX12 support (Windows 10+). ROCm on Windows is limited to RDNA1+.
- Windows 10 or 11
- Python 3.10, 3.11, or 3.12 (64-bit)
- AMD GPU with ≥4GB VRAM (8GB+ recommended)
- ~500MB disk space (model cache)
Fastest setup, works on all AMD GPUs.
# Clone this repo
git clone https://github.com/ChharithOeun/whisper-amd-windows.git
cd whisper-amd-windows
# Create virtual environment
python -m venv venv
venv\Scripts\activate
# Install dependencies
pip install --upgrade pip
pip install faster-whisper onnxruntime-directml
# Verify GPU detection
python scripts/verify_gpu.py
# Transcribe audio
python scripts/transcribe.py path/to/audio.mp3
# Benchmark your GPU
python scripts/benchmark.pyFor maximum performance on RDNA1+ cards using ROCm:
# Requires comfyui-amd-windows-setup environment
# See: https://github.com/ChharithOeun/comfyui-amd-windows-setup
git clone https://github.com/ChharithOeun/whisper-amd-windows.git
cd whisper-amd-windows
# Use the pre-configured ROCm environment
source /path/to/comfyui-rocm-env/bin/activate
pip install -r requirements-rocm.txt
python scripts/transcribe_rocm.py path/to/audio.mp3If GPU acceleration isn't available:
pip install faster-whisper
python scripts/transcribe.py path/to/audio.mp3 --device cpuDownload Python 3.11 (64-bit Windows installer).
# Verify installation
python --version # Should be 3.10, 3.11, or 3.12git clone https://github.com/ChharithOeun/whisper-amd-windows.git
cd whisper-amd-windowspython -m venv venv
venv\Scripts\activateYou should see (venv) in your prompt.
python -m pip install --upgrade pippip install faster-whisper onnxruntime-directml- faster-whisper: Optimized Whisper inference engine
- onnxruntime-directml: ONNX Runtime with DirectML GPU support
python scripts/verify_gpu.pyExpected output on AMD GPU:
GPU Detection Report
====================
DirectML available: True
AMD GPU detected: True
Device: DirectML device 0 (AMD Radeon RX 5700 XT)
CUDA not found (expected on AMD)
python scripts/transcribe.py examples/sample.mp3Outputs:
sample.txt— Plain text transcriptsample.srt— Subtitle file (timestamp segments)
python scripts/benchmark.pyShows model size, device, speed (x realtime), VRAM usage.
Benchmark on RX 5700 XT (8GB VRAM) with various Whisper models:
| Model | Size | Speed | VRAM | Time for 60s Audio |
|---|---|---|---|---|
| tiny | 39MB | ~45x realtime | 0.4GB | 1.3s |
| base | 140MB | ~18x realtime | 0.8GB | 3.3s |
| small | 466MB | ~12x realtime | 1.2GB | 5.0s |
| medium | 1.5GB | ~8x realtime | 2.4GB | 7.5s |
| large | 2.9GB | ~4x realtime | 4.2GB | 15s |
Baseline (CPU only): ~0.3x realtime on medium = 200s for 60s audio. Speedup: ~26x faster with RX 5700 XT.
Transcribing a 2-minute podcast episode (128 kbps MP3):
Input: podcast_episode_001.mp3 (2:34)
Model: medium
Device: DirectML
Total time: 19.2 seconds
Speed: ~8.0x realtime
Output: podcast_episode_001.txt
[Transcript of full 2:34 audio captured]
Output: podcast_episode_001.srt
00:00:00,000 --> 00:00:05,500
Welcome to the AI podcast, where we discuss...
00:00:05,500 --> 00:00:12,000
the latest developments in machine learning and open source.
Choose the largest Whisper model your GPU can fit:
| GPU VRAM | Recommended Model | Use Case |
|---|---|---|
| 2–4GB | small (466MB) |
Real-time speech, live captions |
| 4–6GB | medium (1.5GB) |
Podcast, meeting transcription |
| 6–8GB | medium–large (1.5–2.9GB) |
High accuracy, document transcription |
| 8GB+ | large, large-v3 (2.9GB) |
Maximum accuracy across languages |
Rule of thumb: Model should be ≤ 40% of your GPU VRAM to leave room for activations.
Cause: DirectML not detected or older drivers.
Fix:
# Update AMD GPU drivers
# Download from https://www.amd.com/en/support
# Verify DirectML is available
python -c "import onnxruntime; print(onnxruntime.get_available_providers())"
# Should show 'DmlExecutionProvider' in list
# If not, reinstall onnxruntime-directml:
pip uninstall onnxruntime-directml onnxruntime
pip install onnxruntime-directmlCause: Model too large for GPU VRAM.
Fix:
- Use smaller model:
medium→small - Enable CPU offloading (slows down inference slightly):
python scripts/transcribe.py audio.mp3 --compute-type int8
- Reduce batch size in
transcribe.py
Cause: DirectML provider not registered.
Fix:
# Use CPU explicitly
python scripts/transcribe.py audio.mp3 --device cpuSupported formats: MP3, WAV, M4A, FLAC, OGG, WMA
Convert with FFmpeg:
# Install FFmpeg: https://ffmpeg.org/download.html
ffmpeg -i unsupported.format -acodec libmp3lame -ab 192k output.mp3Cause: ROCm environment not sourced.
Fix:
# Must activate comfyui-rocm environment first
source /path/to/comfyui-rocm-env/bin/activate # Linux WSL
# or on native ROCm on Windows (if HIP SDK installed):
set HIP_VISIBLE_DEVICES=0
rocminfo # Verify GPU detection- comfyui-amd-windows-setup — Complete guide to setting up ComfyUI with AMD GPU on Windows (ROCm + DirectML)
- AMD-GPU-Windows-Setup — Baseline AMD GPU driver and ROCm setup for Windows
whisper, speech-to-text, amd-gpu, directml, rocm, windows, gpu-acceleration, transcription, onnxruntime, faster-whisper, rdna, rdna2, rdna3, rx-5700-xt, rx-6700-xt, gpu-computing
Found an issue? Have a faster-whisper optimization? Tested on another AMD GPU? Open an issue or PR:
- Fork the repository
- Create a branch:
git checkout -b feature/gpu-xyz - Add your changes + test output (benchmark results, transcription samples)
- Push and open a pull request
Please include:
- Your GPU model and driver version
- Python version and OS build
- Benchmark output from
scripts/benchmark.py - Any new methods or optimizations tested
MIT License — see LICENSE file.
Copyright © 2026 Chharith Oeun
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files to use, modify, and distribute freely.
- Issues & Questions: GitHub Issues
- Discussions: GitHub Discussions
- Buy Me a Coffee: Support development
Last tested: April 2026 | Python: 3.10–3.12 | Windows: 10/11 (build 19041+)