CUDA 13 and PyTorch dropped the P100: what still works

The P100 is compute capability 6.0 (sm_60). Newer toolchains are quietly leaving it behind, and the failure message doesn’t tell you why:
no kernel image is available for execution on the device
That means the binary contains no GPU code for your card’s architecture.
Driver: stay on the 580 branch
NVIDIA says the 580 driver series “will be the last to support” Maxwell, Pascal and Volta. Pin 580 and don’t let your package manager move you to 590 or newer.
On Linux there’s a second catch: NVIDIA’s newer open kernel modules don’t support Pascal. Its own guidance for Maxwell, Pascal and Volta is to keep using the proprietary driver. On Ubuntu that means the 580 packages without -open in the name. For a headless box I used nvidia-headless-580-server when I set up a two-P100 Ubuntu machine in October 2026.
llama.cpp: build it with CUDA 12.x
CUDA 13 removed offline compilation and library support for Maxwell, Pascal and Volta, so my CUDA 13 builds of llama.cpp don’t include sm_60 at all. Every build that runs on the P100 is compiled with CUDA 12.9 and lists the architecture explicitly:
cmake -B build -DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES="60;86"
cmake --build build --config Release
60= P100.86= RTX 30-series. Add75for RTX 20-series / GTX 16-series.- List every card in the machine. If one is missing, that card fails at load time.
- Prebuilt release binaries are usually CUDA 12 or 13 and may not include 60. Check before you download 20 GB of weights.
PyTorch: use the cu118 wheels
The official PyTorch 2.8 Windows wheels for cu126 and cu128 both start at sm_61. The P100 misses by one.
What works (verified with a real CUDA op on the card):
pip install torch==2.7.1+cu118 torchaudio==2.7.1+cu118 --index-url https://download.pytorch.org/whl/cu118
bf16: switch to float32
The P100 has no fast bf16. Many modern models (TTS, diffusion) default to bf16 and will either crash or crawl. Force float32 (or fp16 where the model tolerates it). I had to do this for a text-to-speech model, and after that it ran fine.
Checklist
nvidia-smishows the card → the driver is fine.- “No kernel image” → your binary lacks sm_60. Rebuild with
60in the arch list, or use a CUDA 12 / cu118 build. - Garbage output or very slow → look for bf16 and switch to float32.