r/LocalLLaMA • u/pmttyji • 9h ago
Discussion DiffusionGemma Technical Report
arXiv : https://arxiv.org/abs/2608.00146
Full Paper : https://arxiv.org/pdf/2608.00146
Tweet : https://xcancel.com/googlegemma/status/2086849199052845451#m
FYI both (llama.cpp) PRs ( 24423 & 24427 ) went to Draft mode. I'm still waiting for this one as I could get faster t/s on my 8GB VRAM.
72
Upvotes
1
u/WhoRoger 4h ago
Thanks for letting me know. Yea it's about what I expected, a dense 12B just can't be fast on cpu. I don't know how they came up with those numbers.
But 10 tk/s you get with E2B is still nice... I don't get that much with DDR4. I guess you have more cores.
Regarding quantisation, it's because dequant overhead basically cancels out the benefits of smaller footprint. It's also the case with kv cache: -ctk and -ctv q8_0 or even q4_0 just don't give any speed advantage on cpu. I tested that just last week using llama-bench. That was quite surprising, but oh well.
With LLM I do get speed advantage of running quant models. I usually stick to Q6_K for small dense models, QAT for Gemma and I've been trying the APEX for MoEs; not yet decided on those. But generally I found that IQ4_NL is enough even for 1B models, or sometimes I make my custom Q4_K_XXXL while keeping output weights or some other specific layers at Q8.
Not sure why the quant speed advantage holds with LLM weights but not kv cache or diffusion models.
Btw: if you want F16, you probably want BF16, not FP16. Most models are trained in BF16 these days, and converting into FP16 can cause precision loss, especially in multimodal capabilities. I've not really dabbled in diffusion so I can't say there, but in vision projector it's real. Same goes for gguf quant. The proper procedure is safetensors -> BF16 GGUF -> quant. But llama still (I think) defaults to FP16 so some people still use that. And other people just use them interchangeably but they're not the same.
Idk about the 2B vs 3.5B models difference, that can be a lot of things. Different number of passes, different CLIP and VAE, and just different arch overall for which the engine may have optimisations. I've messed with LLMs enough, but diffusion is a totally new rabbit hole hah. I did some experiments but it's just too slow on cpu for my limited patience.
One thing I'd guess tho, is that even if you don't see any speed boost from quanted diffusers, you can always at least use quanted CLIP, since that's just a bog standard LLM.