Skip to main content
Windows supports RAM/CPU detection and NVIDIA GPU detection via nvidia-smi.

GPU Detection

NVIDIA GPUs

llmfit detects NVIDIA GPUs via two methods:

1. nvidia-smi (Primary)

Requirements:
  • NVIDIA drivers installed
  • nvidia-smi.exe in PATH (usually C:\Program Files\NVIDIA Corporation\NVSMI\)
Multi-GPU Support:
  • Aggregates same-model GPUs (e.g., 2x RTX 4090 → count=2, per-card VRAM=24GB)
  • Total VRAM = per-card VRAM × count

2. WMI (Windows Management Instrumentation)

Fallback method when nvidia-smi is unavailable or for non-NVIDIA GPUs:
Detected GPUs:
  • NVIDIA (GeForce, RTX, Quadro, Tesla) → CUDA backend
  • AMD (Radeon, RX) → Vulkan backend
  • Intel (Arc, Iris) → SYCL backend
Filtered entries:
  • Microsoft Basic Display Adapter
  • Virtual/Remote display adapters
VRAM Limitations: WMI AdapterRAM is a 32-bit field capped at ~4 GB. For GPUs with >4 GB VRAM, llmfit estimates from GPU name:

Installation Methods

If Scoop is not installed:

From Source

Prerequisites:

Binary Download

Download the latest Windows binary from GitHub Releases:
  1. Download llmfit-windows-x64.zip
  2. Extract llmfit.exe
  3. Move to a directory in PATH (e.g., C:\Program Files\llmfit\)
  4. Add to PATH via System Properties → Environment Variables

WSL (Windows Subsystem for Linux)

llmfit can run natively on Windows or inside WSL. Each has trade-offs:

Running in WSL2

Advantages:
  • Native Linux environment
  • Better support for ROCm (AMD) if needed
  • Consistent with Linux instructions
Requirements: Installation:
GPU Detection in WSL: llmfit detects WSL via:
NVIDIA GPUs work via nvidia-smi in WSL2:
Known Limitations:
  • AMD ROCm not officially supported in WSL
  • Intel Arc support limited in WSL

Running Natively on Windows

Advantages:
  • Direct GPU access (no virtualization overhead)
  • Better NVIDIA GPU support
  • WMI fallback for non-NVIDIA GPUs
Recommendation: Use native Windows installation for best GPU detection.

Troubleshooting

GPU Not Detected

NVIDIA GPU

  1. Check if nvidia-smi works:
  2. If nvidia-smi not found:
  3. Reinstall NVIDIA drivers:
  4. Check WMI fallback:
  5. Manual override:

AMD/Intel GPU

AMD and Intel GPUs rely on WMI detection:
Expected output:
If AdapterRAM shows low value (< 4 GB) for high-VRAM GPU, llmfit estimates from name.

VRAM Shows Incorrect Value

WMI 32-bit limitation: WMI reports wrong VRAM for GPUs with >4 GB:
llmfit automatically falls back to name-based estimation. If incorrect, use manual override:

nvidia-smi Works But llmfit Doesn’t Detect GPU

PATH issue:
Command execution issue: llmfit spawns nvidia-smi as a subprocess. Check for permission issues:

WSL-Specific Issues

nvidia-smi not working in WSL:
  1. Install CUDA drivers for WSL:
  2. Restart WSL:
  3. Verify GPU access:
WSL not detected: llmfit checks for WSL via environment variables:
If none exist, WSL detection fails (non-critical, only affects logging).

Performance Issues

High VRAM usage: Check VRAM usage via Task Manager:
  1. Task Manager → Performance → GPU
  2. Watch “Dedicated GPU memory” usage
If near capacity:
  • Close GPU-intensive apps (browsers, games)
  • Use --max-context to limit context length:
Slow inference estimates: llmfit uses GPU memory bandwidth for speed estimation. Check GPU model detection:
If GPU model is wrong or generic (“NVIDIA GPU”), speed estimates may be inaccurate.

Known Limitations

AMD GPU Support

  • No ROCm on Windows: AMD GPUs use Vulkan backend (slower than ROCm on Linux)
  • VRAM detection: Relies on WMI (may be inaccurate for >4 GB GPUs)
  • Workaround: Use manual override for accurate VRAM:

Intel Arc Support

  • Limited detection: Relies on WMI
  • SYCL backend: Requires Intel oneAPI runtime (not auto-detected)
  • Recommendation: Use NVIDIA GPU or run in WSL2 for better Intel Arc support

Multi-GPU Limitations

  • Different vendors: llmfit uses the GPU with most VRAM as primary
  • Mixed NVIDIA + AMD: Only NVIDIA detected via nvidia-smi, AMD via WMI
  • Check detection:

Next Steps