mirror of
https://github.com/dogkeeper886/ollama37.git
synced 2025-12-20 12:47:00 +00:00
- Add step to check/create /dev/nvidia-uvm device files - Use nvidia-modprobe -u -c=0 if UVM devices missing - Restart container after creating UVM devices - Update criteria to clarify GPU detection requirements - Increase timeout to 120s for container restart Fixes issue where nvidia-smi works but Ollama only detects CPU. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
46 lines
1.4 KiB
YAML
46 lines
1.4 KiB
YAML
id: TC-RUNTIME-002
|
|
name: GPU Detection
|
|
suite: runtime
|
|
priority: 2
|
|
timeout: 120000
|
|
|
|
dependencies:
|
|
- TC-RUNTIME-001
|
|
|
|
steps:
|
|
- name: Check nvidia-smi inside container
|
|
command: docker exec ollama37 nvidia-smi
|
|
|
|
- name: Check CUDA libraries
|
|
command: docker exec ollama37 ldconfig -p | grep -i cuda | head -5
|
|
|
|
- name: Check UVM device files (create if missing)
|
|
command: |
|
|
if [ ! -e /dev/nvidia-uvm ]; then
|
|
echo "UVM device missing, creating with nvidia-modprobe..."
|
|
sudo nvidia-modprobe -u -c=0
|
|
echo "Restarting container to pick up UVM devices..."
|
|
cd docker && docker compose restart
|
|
sleep 15
|
|
else
|
|
echo "UVM device exists: $(ls -l /dev/nvidia-uvm)"
|
|
fi
|
|
|
|
- name: Check Ollama GPU detection in logs
|
|
command: |
|
|
cd docker && docker compose logs 2>&1 | grep -E "(inference compute|GPU detected)" | tail -5
|
|
|
|
criteria: |
|
|
Tesla K80 GPU should be detected by both nvidia-smi AND Ollama CUDA runtime.
|
|
|
|
Expected:
|
|
- nvidia-smi shows Tesla K80 GPU(s) with Driver 470.x
|
|
- CUDA libraries are available (libcuda, libcublas, etc.)
|
|
- /dev/nvidia-uvm device file exists (required for CUDA runtime)
|
|
- Ollama logs show GPU detection, NOT "id=cpu library=cpu"
|
|
|
|
NOTE: If nvidia-smi works but Ollama shows only CPU, the UVM device
|
|
files are missing. The test will auto-fix with nvidia-modprobe -u -c=0.
|
|
|
|
The K80 has 12GB VRAM per GPU. Accept variations in reported memory.
|