Last verified: 2026-10-20
What FreeToken solves
MoE models like DeepSeek-V4-Flash (284B total, 8B active) or Qwen3.6-35B (30.5B total, 3.3B active) generate tokens at the speed of their active parameters — but they need memory for all parameters. A 35B MoE at 4-bit quantization needs ~18 GB of memory, which doesn’t fit on an 8GB GPU. Traditional offloading (llama.cpp, Ollama) moves weights to system RAM statically, which works but is slow — PCIe bandwidth becomes the bottleneck. FreeToken takes a different approach:- Dynamic co-scheduling — the engine predicts which experts you’ll need next and streams them from CPU to GPU ahead of time, overlapping transfer with compute
- Double buffering — while one set of experts runs on GPU, the next set transfers from CPU, hiding latency
- Bandwidth-adaptive execution — FreeToken measures your PCIe bandwidth and adjusts the scheduling policy to match
Supported models
FreeToken currently supports three MoE model families:
The 35B model fits on a single 24GB GPU at 4-bit. The 284B and 753B models require system RAM offloading — FreeToken’s dynamic scheduling makes this practical on a gaming desktop with 64-128 GB of system RAM.
Hardware requirements
Minimum:- NVIDIA RTX 30/40/50 series GPU (8GB+ VRAM)
- 32 GB system RAM (64 GB+ recommended for 284B+ models)
- PCIe 3.0 x16 or better (PCIe 4.0/5.0 preferred)
- CUDA 12.x
- Apple Silicon (use MLX instead — see MLX distributed inference)
- AMD GPUs
- Pre-Pascal NVIDIA GPUs (no CUDA compute capability 6.0+)
Installation
Install FreeToken withuv (recommended) or pip:
[accel] extra installs CUDA kernels and optimization dependencies. Without it, FreeToken falls back to a slower reference implementation.
Quick start
Serve Qwen3.6-35B on a 24GB GPU
http://127.0.0.1:8000/v1. Test it:
- Decode speed: ~39 tokens/s
- Time to first token: ~1.2s (4K prompt)
- Memory usage: ~18 GB VRAM + ~2 GB system RAM
Serve DeepSeek-V4-Flash with CPU offloading
For the 284B model, you’ll need 64+ GB of system RAM and a GPU with at least 8GB VRAM:--offload-ratio 0.8 tells FreeToken to keep 20% of experts in GPU memory and stream the remaining 80% from system RAM. Adjust based on your VRAM:
Connect to Tokios
Once FreeToken is running onlocalhost:8000, point the Tokios connector at it:
Performance tuning
Optimize for throughput
If you’re serving multiple concurrent requests, enable continuous batching:Optimize for latency
For interactive use where you want the fastest possible first token:Monitor resource usage
FreeToken includes a built-in metrics endpoint:- GPU memory usage
- System RAM usage
- PCIe transfer rate (GB/s)
- Decode throughput (tokens/s)
- Active expert count per token
FreeToken vs other backends
FreeToken’s advantage is the dynamic scheduling — it’s 2.5-3x faster than static offloading on the same hardware when the model doesn’t fully fit in VRAM. If your model does fit entirely in VRAM, vLLM is slightly faster, but FreeToken remains competitive.
Troubleshooting
”CUDA out of memory” even with CPU offloading
Your--offload-ratio is too low. Increase it to stream more experts from CPU:
Decode speed is slower than expected
Check PCIe bandwidth:Model download is slow
FreeToken downloads from Hugging Face. If you’re in a region with slow HF access, use a mirror:MLX distributed inference
If you’re on Apple Silicon and want to run 800B+ models locally, MLX’s distributed inference is the equivalent of FreeToken’s CPU-GPU co-scheduling — but across multiple Macs. MLX distributed (announced October 2026) uses RDMA over Thunderbolt to cluster Mac Studios or Mac Pros. A 4× M5 Ultra cluster achieves 36.73 tokens/s on Muse Spark Open (816B parameters). Setup:Next steps
Supported backends
Compare FreeToken to other local inference backends.
MoE concepts
Understand how Mixture-of-Experts routing works and why memory scales with total parameters.
Model fit
Calculate whether a model and quantization fit your hardware.
Connect to Tokios
Turn your local FreeToken server into an authenticated API endpoint.
Sources
- FreeToken GitHub repository — installation, supported models, and technical details.
- FreeToken paper (arXiv) — bandwidth-adaptive execution and dynamic co-scheduling.
- InfoQ coverage — practical benchmarks and hardware requirements.