๋๋์ด ๊ฐ๋ฅํด์ง ๋ผ๋ฐ์จ GPU AI ์ฐ์ฐ
์ต๊ทผ AMD์์ ROCm 7.2๋ฅผ ๋ฐํํ๋ฉด์ Windows ์ง์์ด ๊ณต์์ ์ผ๋ก ์์๋์๋ค.
๊ทธ๋์ PyTorch GPU ์ฐ์ฐ์ ๋๋ถ๋ถ NVIDIA CUDA ํ๊ฒฝ์์ ์ฌ์ฉ๋์ด ์์ง๋ง, ์ด์ AMD GPU์์๋ ROCm ๊ธฐ๋ฐ PyTorch๋ฅผ ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ์ด ์ ์ ํ์คํ๋๊ณ ์๋ค.
ROCm(Radeon Open Compute)์ AMD์์ ์ ๊ณตํ๋ GPU ์ปดํจํ ํ๋ซํผ์ผ๋ก, NVIDIA์ CUDA์ ๋น์ทํ ์ญํ ์ ํ๋ค.
ํนํ ํฅ๋ฏธ๋ก์ด ์ ์ ๊ณต์ ์ง์ ๋ชฉ๋ก์๋ ์์ง๋ง ๋์ผํ ์ํคํ ์ฒ ๊ณ์ด์ธ RX 7600์์๋ ์ ์์ ์ผ๋ก ๋์ํ๋ ๊ฒ์ ํ์ธํ๋ค๋ ์ ์ด๋ค.
๊ทธ๋์ ์ด๋ฒ ๊ธ์์๋ Windows + AMD GPU ํ๊ฒฝ์์ PyTorch GPU ์ฐ์ฐ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋จ๊ณ๋ณ๋ก ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค.
์์คํ ์๊ตฌ์ฌํญ
์ค์น๋ฅผ ์์ํ๊ธฐ ์ ์ ๋ค์ ์ฌํญ์ ํ์ธํ์ธ์:
- ์ด์์ฒด์ : Windows 10/11 (64-bit)
- GPU: AMD Radeon RX 7000 ์๋ฆฌ์ฆ (RDNA 3 ์ํคํ ์ฒ)
- ๋๋ผ์ด๋ฒ: ์ต์ AMD Adrenalin ๋๋ผ์ด๋ฒ ์ค์น ๊ถ์ฅ
- Python: 3.12.x (ํ์ – ๋ฒ์ ํธํ์ฑ ์ค์)
- ๋์คํฌ ๊ณต๊ฐ: ์ต์ 10GB ์ฌ์ ๊ณต๊ฐ
ROCm Windows ์ง์ GPU
ROCm 7.2 ๊ธฐ์ค Windows์์ ๊ณต์์ ์ผ๋ก ์ง์๋๋ GPU๋ ๋ค์๊ณผ ๊ฐ๋ค.
| Architecture | GPU |
|---|---|
| gfx1201 | RX 9070 |
| gfx1200 | RX 9070 XT |
| gfx1100 | RX 7900 XTX |
| gfx1101 | RX 7700 |
| – | Radeon PRO W7900 |
๊ณต์ ๋ฌธ์: AMD ROCm Windows Compatibility
ํ์ง๋ง ํ ์คํธ ๊ฒฐ๊ณผ, RX 7600 (gfx1102)์์๋ ์ ์์ ์ผ๋ก PyTorch GPU ์ฐ์ฐ์ด ๋์ํ๋ค.
๋ชฉํ
์ต์ข ์ ์ผ๋ก ์๋ ์ฝ๋๊ฐ ์ ์์ ์ผ๋ก ์คํ๋๋ ๊ฒ์ด ๋ชฉํ๋ค.
python -c "import torch; print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"
์ ์ ์ถ๋ ฅ ์:
True
AMD Radeon RX 7600
์ ์ฒด ์ค์น ๊ตฌ์กฐ
Windows์์ ROCm PyTorch ํ๊ฒฝ์ ๊ตฌ์ถํ ๋์ ์ ์ฒด ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ๋ค.
ROCm Runtime
โ
ROCm Python SDK
โ
PyTorch ROCm wheel
โ
ML / AI ๋ผ์ด๋ธ๋ฌ๋ฆฌ (Whisper ๋ฑ)
์ค์น ์์: ROCm Runtime โ ROCm Python SDK โ PyTorch
0. ROCm Runtime ์ค์น (์ฌ์ ์ค๋น)
PyTorch๋ฅผ ์ค์นํ๊ธฐ ์ ์ ๋จผ์ ROCm Runtime์ ์ค์นํด์ผ ํฉ๋๋ค.
- AMD ROCm ๋ค์ด๋ก๋ ํ์ด์ง ๋ฐฉ๋ฌธ
- ROCm 7.2 Windows Installer ๋ค์ด๋ก๋ ๋ฐ ์คํ
- ์ค์น ์๋ฃ ํ ์์คํ ์ฌ๋ถํ
1. ROCm GPU ์ธ์ ํ์ธ
ROCm ์ค์น ํ GPU๊ฐ ์ ์์ ์ผ๋ก ์ธ์๋๋์ง ํ์ธํ๋ค.
hipinfo
์ถ๋ ฅ ์:
Name: AMD Radeon RX 7600
gcnArchName: gfx1102
GPU ์ ๋ณด๊ฐ ํ์๋๋ฉด ์ ์์ด๋ค.
์ฐธ๊ณ : Windows ROCm์์๋
rocminfo๋์hipinfo๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
2. Python ๋ฒ์ ํ์ธ (๋งค์ฐ ์ค์!)
PyTorch ROCm wheel์ Python ๋ฒ์ ์ ๋ง๊ฒ ๋น๋๋์ด ์๋ค.
์๋ฅผ ๋ค์ด wheel ํ์ผ ์ด๋ฆ์ด ๋ค์๊ณผ ๊ฐ๋ค๋ฉด:
torch-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
์ฌ๊ธฐ์ cp312 = Python 3.12
์ฆ, Python 3.12 ํ๊ฒฝ์์๋ง ์ค์น ๊ฐ๋ฅํ๋ค.
Python ๋ฒ์ ํ์ธ:
python --version
์:
Python 3.12.8
โ ๏ธ ์ฃผ์: Python 3.13 ๋ฑ ๋ค๋ฅธ ๋ฒ์ ์ด๋ฉด wheel ์ค์น๊ฐ ์คํจํฉ๋๋ค.
3. ๊ฐ์ํ๊ฒฝ (venv) ์์ฑ
ํ๋ก์ ํธ ํด๋ ์์ฑ:
mkdir C:\Dev\ml
cd C:\Dev\ml
venv ์์ฑ:
python -m venv venv
venv ํ์ฑํ:
CMD:
venv\Scripts\activate
PowerShell:
.\venv\Scripts\Activate.ps1
4. ROCm Python SDK ์ค์น
PyTorch ROCm wheel์ ROCm Python SDK ์์กด์ฑ์ด ์๋ค.
PowerShell์์ ๋ค์ ๋ช ๋ น์ด๋ก ์ค์นํ๋ค.
pip install --no-cache-dir `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/rocm_sdk_core-7.2.0.dev0-py3-none-win_amd64.whl `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/rocm_sdk_devel-7.2.0.dev0-py3-none-win_amd64.whl `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/rocm_sdk_libraries_custom-7.2.0.dev0-py3-none-win_amd64.whl `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/rocm-7.2.0.dev0.tar.gz
์ฐธ๊ณ : CMD์์๋ ํ ์ค๋ก ์คํํด์ผ ํ๋ค.
5. PyTorch ROCm Wheel ์ค์น
PyTorch ROCm wheel์ ์ค์นํ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง๊ฐ ์๋ค.
๋ฐฉ๋ฒ 1: URL๋ก ์ง์ ์ค์น (๊ถ์ฅ)
AMD ๊ณต์ ๋ฆฌํฌ์งํ ๋ฆฌ์์ ์ง์ ์ค์นํ๋ ๋ฐฉ๋ฒ์ด๋ค.
CMD Prompt:
pip install --no-cache-dir ^
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/torch-2.9.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl ^
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/torchaudio-2.9.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl ^
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/torchvision-0.24.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl
PowerShell:
pip install --no-cache-dir `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/torch-2.9.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/torchaudio-2.9.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl `
https://repo.radeon.com/rocm/windows/rocm-rel-7.2/torchvision-0.24.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl
์ฐธ๊ณ : ์ค์น์ ๋ช ๋ถ ์ ๋ ์์๋ ์ ์์ต๋๋ค.
๋ฐฉ๋ฒ 2: Wheel ํ์ผ ๋ค์ด๋ก๋ ํ ๋ก์ปฌ ์ค์น
๋คํธ์ํฌ๊ฐ ๋ถ์์ ํ๊ฑฐ๋ ์คํ๋ผ์ธ ์ค์น๊ฐ ํ์ํ ๊ฒฝ์ฐ ์ฌ์ฉํ๋ค.
1. Wheel ํ์ผ ๋ค์ด๋ก๋
๋ธ๋ผ์ฐ์ ๋๋ PowerShell์์ ๋ค์ ํ์ผ๋ค์ ๋ค์ด๋ก๋ํ๋ค:
# PowerShell์์ ๋ค์ด๋ก๋
$baseUrl = "https://repo.radeon.com/rocm/windows/rocm-rel-7.2"
Invoke-WebRequest -Uri "$baseUrl/torch-2.9.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl" `
-OutFile "torch-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl"
Invoke-WebRequest -Uri "$baseUrl/torchaudio-2.9.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl" `
-OutFile "torchaudio-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl"
Invoke-WebRequest -Uri "$baseUrl/torchvision-0.24.1%2Brocmsdk20260116-cp312-cp312-win_amd64.whl" `
-OutFile "torchvision-0.24.1+rocmsdk20260116-cp312-cp312-win_amd64.whl"
๋๋ ์ง์ ๋ธ๋ผ์ฐ์ ์์ ๋ค์ด๋ก๋:
- torch-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
- torchaudio-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
- torchvision-0.24.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
2. ๋ค์ด๋ก๋ํ Wheel ํ์ผ ์ค์น
๋ค์ด๋ก๋ํ ํ์ผ์ด ์๋ ๋๋ ํ ๋ฆฌ์์ ์คํ:
pip install torch-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
pip install torchaudio-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
pip install torchvision-0.24.1+rocmsdk20260116-cp312-cp312-win_amd64.whl
๐ก Tip: ๋ก์ปฌ wheel ํ์ผ ์ค์น๊ฐ ๋คํธ์ํฌ ์ค๋ฅ ๋ฐ์ ์ ๋ ์์ ์ ์ด๋ฉฐ, ์ฌ์ค์น ์์๋ ๋น ๋ฅด๋ค.
๊ณต์ ๋ฌธ์: AMD ROCm PyTorch Installation Guide
6. GPU ๋์ ํ์ธ

GPU ์ฌ์ฉ ์ฌ๋ถ ํ์ธ:
python -c "import torch; print(torch.cuda.is_available())"
์ถ๋ ฅ ์:
True
GPU ์ด๋ฆ ํ์ธ:
python -c "import torch; print(torch.cuda.get_device_name(0))"
์ถ๋ ฅ:
AMD Radeon RX 7600
7. GPU ์ฑ๋ฅ ํ ์คํธ
๊ฐ๋จํ GPU ์ฐ์ฐ ํ ์คํธ:
python -c "import torch, time; d='cuda'; x=torch.randn(4096,4096,device=d); torch.cuda.synchronize(); t=time.time(); y=x@x; torch.cuda.synchronize(); print('matmul sec:', time.time()-t, 'device:', y.device)"
์ถ๋ ฅ ์:
matmul sec: 0.118 device: cuda:0
GPU์์ ์ ์์ ์ผ๋ก ์ฐ์ฐ์ด ์ํ๋๋ค.
8. Whisper GPU ํ ์คํธ
GPU ๊ธฐ๋ฐ STT ํ ์คํธ๋ฅผ ์ํด Whisper๋ฅผ ์ค์นํ๋ค.
pip install openai-whisper
ํ ์คํธ ์ฝ๋:
import whisper
import torch
print("GPU available:", torch.cuda.is_available())
print("GPU device:", torch.cuda.get_device_name(0))
model = whisper.load_model("base", device="cuda")
result = model.transcribe("test.wav")
print(result["text"])
์์ฃผ ๋ฐ์ํ๋ ๋ฌธ์
1. ModuleNotFoundError
ModuleNotFoundError: No module named 'whisper'
์์ธ: venv๊ฐ ์๋ ๋ค๋ฅธ Python์ผ๋ก ์คํ
ํด๊ฒฐ:
venv\Scripts\python test.py
2. venv ์ด๋ ์ ๋ฐ์ํ๋ ๋ฌธ์
venv ํด๋๋ฅผ ์ด๋ํ๋ฉด ๋ค์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์๋ค.
Fatal error in launcher
Unable to create process
์์ธ: venv ๋ด๋ถ ์คํฌ๋ฆฝํธ์ ์ ๋ ๊ฒฝ๋ก๊ฐ ์ ์ฅ๋์ด ์์
ํด๊ฒฐ: venv๋ฅผ ์ ์์น์์ ๋ค์ ์์ฑ
3. Python ๋ฒ์ ๋ถ์ผ์น
ERROR: torch-2.9.1+rocmsdk20260116-cp312-cp312-win_amd64.whl is not a supported wheel on this platform.
์์ธ: Python ๋ฒ์ ์ด 3.12๊ฐ ์๋
ํด๊ฒฐ: Python 3.12 ์ค์น ํ ์ venv ์์ฑ
์ฑ๋ฅ ์ฐธ๊ณ ์ฌํญ
AMD ROCm์ ์์ง NVIDIA CUDA๋งํผ ์ต์ ํ๊ฐ ์๋ฒฝํ์ง ์์ต๋๋ค. ํ์ง๋ง ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ์ด ์์ต๋๋ค:
- ๊ฐ์ฑ๋น: ๊ฐ์ ๊ฐ๊ฒฉ๋ NVIDIA GPU ๋๋น ๋ ๋ง์ VRAM
- ์คํ์์ค: ROCm ์คํ ์ ์ฒด๊ฐ ์คํ์์ค
- ๋ฐ์ ๊ฐ๋ฅ์ฑ: ์ปค๋ฎค๋ํฐ์ AMD์ ์ง์์ ์ธ ๊ฐ์
๋ง๋ฌด๋ฆฌ
Windows์์๋ ROCm์ ์ฌ์ฉํ๋ฉด AMD GPU์์ PyTorch GPU ๊ฐ์์ ์ฌ์ฉํ ์ ์๋ค.
ํนํ ๋ค์๊ณผ ๊ฐ์ ์์ ์ ๋ก์ปฌ์์ ์ํํ ์ ์๋ค:
- ๋จธ์ ๋ฌ๋ ์คํ
- Whisper STT
- Stable Diffusion
- LLM inference
์ด์ ๋๋์ด ๋ผ๋ฐ์จ GPU๋ AI ์์ ์ ํ์ฉํ ์ ์๋ ํ๊ฒฝ์ด Windows ์์ AMD GPU ์์๋ ํ์ค์ ์ผ๋ก ๊ฐ๋ฅํด์ก๋ค๊ณ ๋ณผ ์ ์๋ค.
๋ฌผ๋ก ์์ง๊น์ง ์๋ฃ๊ฐ ์ ๊ณ ์ ์ฝ์ฌํญ์ด ๋ง์ง๋ง, ๋ผ๋ฐ์จ GPU๊ฐ ๊ฐ์ง ๊ฐ์ฑ๋น์ ๋์ฉ๋ VRAM์ ํ์ฉํ AI ํ๊ฒฝ์ ๊ฐ๋ฅ์ฑ์ ๋ณด์ฌ์ค ์์์ ์ด๋ผ๊ณ ์๊ฐํ๋ค.
ํ๊ฒฝ ๊ตฌ์ถ์ด ๋ค์ ๊น๋ค๋กญ์ง๋ง ํ ๋ฒ ์ค์ ํด๋๋ฉด ๊ฐ๋ ฅํ ๋ก์ปฌ AI ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ง๋ค ์ ์๋ค.