Skip to content

FreeToken Roadmap (2026) #79

Open
Open

Description

@jason-fxz

FreeToken RoadMap - 2026

New Model Support

Hardware Support

  • macOS: a native Metal engine on Apple Silicon Macs.
  • AMD: support for AMD GPUs via ROCm. AMD Roadmap 2026 Q4-2027 Q1 #541
  • DGX Spark: aarch64 wheels, sm_121 kernels, and a unified-memory mode.

Multimodal

Multi-GPU

  • DGX Spark: multi-GPU optimisation for linked DGX Spark units.
  • serve one model across multiple GPUs on one machine.

Quantization

Speculative Decoding

  • Speculative decoding, including MTP / DFlash / Dspark.

Any contribution is welcome. Join the Developer Slack if you want to get involved.


TODO: This is still WIP.

Activity

  1. pinned this issue on Aug 23, 2026
  2. dusty44 commented on Aug 23, 2026

    @dusty44

    Any thoughts about enabling experts to stream from NVME drives? with the cached experts optimised in three tiers vram, system ram then streamed from disk? I've built it in a dwarfstar derived engine and it can work shockingly well.

  3. Aladincz commented on Aug 24, 2026

    @Aladincz

    Is there any chance that this technology could be usable and give some benefits to old macs running small LLM on CPU? Would it be technically applicable?

  4. Headmaster218 commented on Aug 24, 2026

    @Headmaster218

    Interesting timing — I’ve independently been working on a fairly similar MoE serving problem on AMD RDNA3/Vulkan, mainly around expert caching/paging, heterogeneous CPU–GPU execution and large-model offloading.
    It’s still very much WIP and I’m cleaning up the benchmarks/docs, but the current code is here: [infr]
    Running on a single RX 7900 XTX + 64GB DDR4. Happy to compare notes on the AMD side.
    Successfully running with
    Qwen3.6-35B-A3B with decode at 150 ~ 40tk/s, prefill at 3000 ~ 400tk/s,
    Qwen3.5-122B-A10B with decode at ~23tk/s
    Ling 3.0 flash with decode at 36tk/s,
    Deepseek V4 Flash at ~4tk/s

  5. orangelightening commented on Aug 24, 2026

    @orangelightening

    Looking forward to the qwen3.8 27b model support. I am using the qwen3.6 35b in the freetoken engine and using deepseek harness to serve it via the openai compatible endpoint. I have an rx3060 and 128gb of ram on an old xeon server and this is the best performing local ai system I have owned. Absolutely wonderful.

  6. Headmaster218 commented on Aug 25, 2026

    @Headmaster218

    Different from MoE, 27B is a kind of dense model, that doesnt suit this kind of cache architecture. But, Qwen team said they will public a new middle size MoE model this week, probably Qwen3.8-122B-A10B, (so thats why now im optimizing Qwen3.5-122B-A10B ;) ), and probably it will be more powerful than Qwen3.8 27B, so just, wait for it.

  7. erikfenriz commented on Aug 25, 2026

    @erikfenriz

    Would be so awesome to see it on macOS!

  8. self-assigned this
    on Aug 26, 2026
  9. McL-M commented on Aug 26, 2026

    @McL-M

    First, let me just say this is very interesting work. Keep it up.

    Unfortunately, I can't try it. Lot's of older AMD GPUs can't run ROCm.

    But they can use Vulkan. And so can virtually everything else.

    Please consider supporting Vulkan!

  10. Headmaster218 commented on Aug 26, 2026

    @Headmaster218

    First, let me just say this is very interesting work. Keep it up.

    Unfortunately, I can't try it. Lot's of older AMD GPUs can't run ROCm.

    But they can use Vulkan. And so can virtually everything else.

    Please consider supporting Vulkan!

    https://github.com/Headmaster218/infr
    Try MoE4All ;) , it uses Vulkan

  11. Abdul-Sen commented on Aug 26, 2026

    @Abdul-Sen

    First, let me just say this is very interesting work. Keep it up.
    Unfortunately, I can't try it. Lot's of older AMD GPUs can't run ROCm.
    But they can use Vulkan. And so can virtually everything else.
    Please consider supporting Vulkan!

    https://github.com/Headmaster218/infr Try MoE4All ;) , it uses Vulkan

    Tried with Qwen3.8-Flash-Next?

  12. Headmaster218 commented on Aug 26, 2026

    @Headmaster218

    First, let me just say this is very interesting work. Keep it up.
    Unfortunately, I can't try it. Lot's of older AMD GPUs can't run ROCm.
    But they can use Vulkan. And so can virtually everything else.
    Please consider supporting Vulkan!

    https://github.com/Headmaster218/infr Try MoE4All ;) , it uses Vulkan

    Tried with Qwen3.8-Flash-Next?

    yes!!! just had an early success!!!!! Qwen3.8-Flash-Next!!!

  13. McL-M commented on Aug 27, 2026

    @McL-M

    First, let me just say this is very interesting work. Keep it up.
    Unfortunately, I can't try it. Lot's of older AMD GPUs can't run ROCm.
    But they can use Vulkan. And so can virtually everything else.
    Please consider supporting Vulkan!

    https://github.com/Headmaster218/infr Try MoE4All ;) , it uses Vulkan

    Yeah, I'll check it out! Thanks! 😁

  14. radubalanpro commented on Aug 27, 2026

    @radubalanpro

    Any plans for AMD gfx1151 ? I have a GMKtec EVO-X2, Ryzen AI Max+ 395 3.0GHz, 128GB DDR5, Radeon 8060S. I am running llama.cpp with ROCm on linux - custom build (actually wsl2) with pretty good results in inference, better then Vulkan in Windows, but i look forward to FreeToken, As for a test i get 24 t/s on Qwen3.8-27 Q4KM gguf and around 35-40 t/s on qwen-coder-next UD Q4KL unsloth

  15. LeonardoDaviti commented on Aug 27, 2026

    @LeonardoDaviti

    Any plans for AMD gfx1151 ? I have a GMKtec EVO-X2, Ryzen AI Max+ 395 3.0GHz, 128GB DDR5, Radeon 8060S. I am running llama.cpp with ROCm on linux - custom build (actually wsl2) with pretty good results in inference, better then Vulkan in Windows, but i look forward to FreeToken, As for a test i get 24 t/s on Qwen3.8-27 Q4KM gguf and around 35-40 t/s on qwen-coder-next UD Q4KL unsloth

    Same, but Vulkan for support will be much easier no?

  16. skywalk1411 commented on Aug 28, 2026

    @skywalk1411

    Any plans for AMD gfx1151 ? I have a GMKtec EVO-X2, Ryzen AI Max+ 395 3.0GHz, 128GB DDR5, Radeon 8060S. I am running llama.cpp with ROCm on linux - custom build (actually wsl2) with pretty good results in inference, better then Vulkan in Windows, but i look forward to FreeToken, As for a test i get 24 t/s on Qwen3.8-27 Q4KM gguf and around 35-40 t/s on qwen-coder-next UD Q4KL unsloth

    maybe my build works on gfx1151, this works on gfx1150 #241

  17. dbourdea commented on Sep 2, 2026

    @dbourdea

    Any plans for AMD gfx1151 ? I have a GMKtec EVO-X2, Ryzen AI Max+ 395 3.0GHz, 128GB DDR5, Radeon 8060S. I am running llama.cpp with ROCm on linux - custom build (actually wsl2) with pretty good results in inference, better then Vulkan in Windows, but i look forward to FreeToken, As for a test i get 24 t/s on Qwen3.8-27 Q4KM gguf and around 35-40 t/s on qwen-coder-next UD Q4KL unsloth

    I have created a fork/port of the original for AMD Strix Halo. I have 2 GMKtec EVO-X2s with 64GB ram (practically stole them from the person i got them from ($USD 950 each). I am running Ubuntu natively and have ditched windows completely. Both of these and an HX370 based Beelink AI 9 computer run inference at full context and 2 slots with the vulkan/RADV/llama.cpp stack. That is until i ported Freetoken to the Strix Halo last week. I switched to ROCm 10 (just came out last week) and the latest version of HIP. once I got it stable and producing at least equal to the ROCm / HIP / Freetoken stack, i created the below white paper. I've posted the paper and additional info on my github. I am continuing to research and refine the AMD port and would be open to collaborating.

    Below is a link to the paper and how to access the setup.

    https://github.com/dbourdea/freetoken-amd-strix-halo-paper

  18. maxwhipw commented on Sep 4, 2026

    @maxwhipw

    Suggesting to prioritize vulkan over RocM for AMD

    From my research and experience right now on an AMD I am seeing more far performance on Vulkan, and vulkan has the advantage of working on more hardware.

    Hardware I'm using is Strix Halo AI Max+ 395

  19. Yuepixel commented on Sep 18, 2026

    @Yuepixel

    Small note on the Tensor parallelism item — there is already a working port ahead of it, in case it is useful as a reference or a starting point.

    We got FreeToken TP=2 running for NVFP4 quantized MoE experts on a heterogeneous consumer CUDA box: RTX 3090 Ti (sm_86, 24 GB) + RTX 4060 Ti (sm_89, 16 GB) on WSL2. Neither card has native FP4, so the NVFP4 experts execute as W4A16. Model: Qwen3.6-35B-A3B-NVFP4. Verification is greedy output bit-exact vs TP=1 (5/5 prompts, temperature 0).

    What the patch actually had to touch:

    • NVFP4 expert kernels — drop the tp_ok=False rejection, shard intermediate per rank, and let the existing _maybe_all_reduce fold the partial experts (nvfp4.py, nvfp4_banks.py).
    • GDN (linear attention) — local head geometry, and out_proj → row-parallel (gdn.py).
    • FP8 full attention — local q/kv dims, o_proj → row-parallel (attention.py).
    • Loader — segment-aware slicing of the packed q|k|v tensors; a naive row-halving keeps the shapes valid but produces fluent-looking garbage.
    • .clone() on every slice view, otherwise narrow() pins the whole parent allocation and you leak host memory per rank.

    Full write-up + the patch: #520
    Reproduction repo (patch, scripts, verification harness, benchmark numbers): https://github.com/Yuepixel/freetoken-tp2-nvfp4

    Credit: this is a port of the methodology from #478 (2×RX 9070 XT, ROCm, FP8) to CUDA / NVFP4 / heterogeneous cards. Related upstream work: #70.

    Honest caveat: on a heterogeneous pair TP=2 decode was ~2x slower than the single 3090 Ti (the slowest GPU gates each step), but it raised the KV/context budget from 8,198 to 272,785 tokens per rank. So this is a feasibility/capacity win, not a speed win, on this particular box.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions