NEW vs LEGACY GPU setup
PyTorch CUDA wheels drop older GPU support over time. Pascal (sm_61) needs a legacy setup.
Decision table
| Hardware | Typical compute capability | Recommended |
|---|---|---|
| RTX 20/30/40, A100/H100 | sm_75+ | NEW GPU |
| GTX 1080 / 1080 Ti | sm_61 | LEGACY GPU |
| CPU-only | — | NEW (or LEGACY) |
NEW GPUs
Use: requirements_new_gpu.txt (Python 3.12+ fine)
python3.12 -m venv venv
source venv/bin/activate
pip install -U pip
pip install -r requirements_new_gpu.txt
This installs the latest PyTorch with CUDA support. Works with any GPU that has compute capability sm_75 or higher (Turing, Ampere, Ada Lovelace, Hopper).
LEGACY GPUs (Pascal — GTX 1080 / 1080 Ti)
Use: requirements_legacy_gpu.txt (requires Python 3.10)
python3.10 -m venv venv
source venv/bin/activate
pip install -U pip
pip install -r requirements_legacy_gpu.txt
The legacy requirements pin specific PyTorch and CUDA versions that still include sm_61 support. Key constraints:
- Python 3.10 — newer Python versions may not have compatible legacy wheels
- Pinned Torch version — a specific torch+CUDA build that includes Pascal kernels
- Pinned dependencies — numpy, etc. pinned to versions compatible with the older torch
Why Python 3.10?
Modern PyTorch wheels (2.2+) dropped Pascal support. The last compatible builds target Python 3.10 with CUDA 11.8. Using a newer Python may result in torch finding no matching wheel or silently falling back to CPU-only.
Verifying GPU access
After installing, confirm the worker can see the GPU:
python -c "import torch; print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"
Expected output for a GTX 1080 Ti:
True
NVIDIA GeForce GTX 1080 Ti
CPU-only workers
Either install path works for CPU-only workers. The NEW path is simpler. Workers will train on CPU (slower, but functional). The coordinator handles mixed GPU and CPU workers automatically.
python3.12 -m venv venv
source venv/bin/activate
pip install -U pip
pip install -r requirements_new_gpu.txt
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
torch.cuda.is_available() returns False | Wrong install path or CUDA driver mismatch | Check that you used the correct requirements file for your GPU |
No matching distribution found for torch | Python version too new for legacy wheels | Use Python 3.10 for LEGACY path |
| Training crashes with CUDA error | GPU architecture not supported by installed torch | Verify your GPU’s compute capability and use the matching install path |