Docs
Browse documentation

Docs / Getting started

Choose and verify a backend

Fermion selects an optimized native CPU runtime where available and a PyTorch reference path elsewhere.

Platform matrix

PlatformDefault pathStatus
macOS arm64Native CPUOptimized path and local transport expansion
Linux x86-64Native CPUOptimized path
Linux arm64PyTorchReference path
CUDA or MPS devicePyTorchReference path

See what your machine selected

shell
fermion info
fermion bench --tokens 64

info names the active backend and explains why. Published throughput figures describe the native path. bench measures the exact path active on the current machine.

Pin or require a backend

shell
fermion chat --backend native
fermion generate "Hello" --backend torch --dtype float32

--backend native fails rather than silently using a slower path. Use --native-bin or FERMION_NATIVE_BIN to select a specific runner.

Native thread settings

The native runner uses one fewer thread than the detected CPU count, capped at 16. Set FERMION_THREADS to choose a count, and raise the ceiling deliberately with FERMION_MAX_THREADS.

shell
FERMION_THREADS=12 fermion bench
FERMION_MAX_THREADS=24 FERMION_THREADS=24 fermion bench