Hacker Newsnew | past | comments | ask | show | jobs | submit | pulse7's commentslogin

Prompt processing on Macs is VERY slow...

which engine? cause there are dozens already, and some are quite fast.

Which one is the fastest and how fast is it? Even the "fast" ones doesn't seem to even reach close to consumer NVIDIA GPUs released years ago when it comes to prompt processing.

large model and slow, or speed and a teeny model, make your choice

Or you get N of RTX Pro 6000 and get large and fast models :) Make your choice, and do it before the prices go up even more.

indeed. make up your mind, and also "slow/fast" mean very little given plethora of models to choose from. fast for what, slow for what. fast with which harness, etc...

well yes if money is no object, why not

none of them are Nvidia GPU FAST

But more memory is available so a larger model can be loaded. It depends on the use case which is better. Any chat or voice model will have better UX with nvidia but document or code generation will be better with apple.

> Prompt processing on Macs is VERY slow...

That sounds like a contradiction.

/J


I hope we will soon have an open-source project for training such small LLMs where one can just pick the architecture (like Qwen / DeepSeek / etc.), parameter count, dataset, ... and then let it run on a local/rented GPUs...

I've been training different architecture 1.33b and 3.33b models using nvidia megatron for about a month. You can train a 1.33b on a 46gb mac and 3.33b is about as big as you can go with a single 96gb blackwell with regular checkpoints etc

> “open-source project”

I’m with you. But what are we going to get? I think this goal sits in a funny place between knowledge and convenience.

On the one hand, tons of “products” promising this.

On the other hand, I’m sure we can find student works—sharing the code they created from a course or book. And I expect there will be gaps, niches filled by pro-coders who see a pro need and fill it.

What I don’t want to do is see the market for model training filled with whatever Microsoft thinks will make money.


"code translation in hardware" microcode is called "native"


Yep. All modern Intel and AMD architectures, save maybe some Atom variants, effectively JIT compile the incoming instructions. It's part of the reason the faster-than-static Java/JVM promises never came to fruition. The goal posts moved after the mainstream chips coopted the approach, in a sense, and they continue to move as pipelines get deeper and broader and transistor count goes up.

Transmeta was a classic failure--right idea, wrong place & time.


Eh?

Intel and AMD were more or less 'Jitting' since the PPro and K5, and that's ignoring NexGen's Nx586 (which was shipping in hardware about a year before the PPro).

All of them are way before Transmeta shipped a CPU. Where Transmeta tried to innovate was by using VLIW rather than a RISC-like core, along with their other special tech (Which they later licensed to lots of companies, including Intel,) to provide reasonable mobile performance with a low power draw. Oh, there's also the bit where Transmeta CMS is much more software based (likely, partially to push enough to software and avoid an x86 CPU license lawsuit) but even modern Intel chips AFAIK are still doing more translation on the CPU layer.


IBM’s microcode is really something. Not too long ago I heard about writing “millicode” as something that’s not at the microcode level, but not quite up at the ISA level.


Millicode used custom extensions to the ISA but is otherwise regular s390 code. For example there is a separate register file and the "original" registers are available with either (I don't remember exactly) special instructions or special memory addresses.

Intel by the way did the same for SGX, they called it xucode.


So it's mostly the "Optionality". Like USB. And yet USB is everywhere...


And USB-C is known as a compatibility mess.


Is it though? Is it really? Outside the HN rant circles which want to return back to times where you needed an adapter for every single laptop model or be shit out of luck for connecting your mouse or projector?


I don't remember ever needing a USB-A adapter to plug in a mouse to a laptop. Until laptops started coming with only USB-C.


yes, hope this answers the loaded question :)


It there anything similar for RTX 3090 and RTX 4090?


I'm not sure about a 4090 but there is a fork for 3090s: https://github.com/Don-Chad/ninfer-3090


I'm running it using a 4090 on using llama.cpp with Q5_K_S and its running at ~33 t/s


Can you please tell which Gemma 4 variant managed to correctly reason through your private benchmarks? Was is Gemma 4 31B?

What quantizations and context lengths did you use for Gemma 4 and Qwen 3.8 27B?

I am asking because I can't even load Gemma 4 31B on my GPU with any reasonable quantization (even with small context), while I can run Qwen 3.8 27B with large context and good quantization...


Gemma 4 12B, Gemma 4 12B QAT, Gemma 4 31B, Gemma 4 31B QAT

Gemma 4 26BA4B would get close, but not quite and sometimes even get stuck in loops despite a repeat penalty.

Do not use any newer updated templates or Unsloth fixes. Use older official templates that released with the models on the huggingface repo. The template here worked: https://huggingface.co/google/gemma-4-12B-it/tree/657684fef0...

llama-server --model "model.gguf" -fa on -np 1 --jinja --ctx-size 262144 -b 768 -ub 768 --cache-type-k f16 --cache-type-v q4_0 --repeat-penalty 1.1 --chat-template-file "chat_template.jinja"

If you don't explicitly point to the template file, then llama.cpp will either use the template inside the model file or it will use its own template copy and your results may vary. Obviously some of the template fixes are useful to people, so it depends if you're having problems with tool calling or can't fix the tool calling in other ways for your scenario.

My experience with the QAT models was that quantizing v to q4_0 gave me better results than q8_0 or even f16. I think the Gemma QAT models may have been QAT trained to expect a q4_0 quantized v cache. If you're not using a QAT model, I would leave both at f16.

Another thing aside from using the QAT models and a Q4_0 v cache since you're having trouble fitting the models, is that you don't have to use the mmproj if you don't intend to use vision. If you need vision, but are hurting on VRAM, then you should be using --no-mmproj-offload. That will keep the mmproj loaded in system RAM instead of on your GPU. Loading images will be a little bit slower, but it can still be quite fast and you'll have more breathing room on your GPU. If you don't provide the mmproj file on the command line at all, then it won't load it anyway. If you're using some program like LM Studio, a simple thing you can do is move the mmproj and mtp files out of the directory for the model so LM studio can't find them and then it won't load them at all.

For Qwen 3.8 27B, doing any quantizing definitely hurt results a lot, so in my case I used: llama-server --model "Qwen3.8-27B-UD-Q4_K_XL.gguf" --spec-type draft-mtp --spec-draft-p-min 0.35 --spec-draft-n-max 2 -fa on -np 1 --jinja --ctx-size 65536 -b 768 -ub 768 --cache-type-k f16 --cache-type-v f16


Gemma 4 12B? This sounds really interesting with Q_4 (preferably QAT) this fits comfortably in 12 or 16 GB VRAM.

Could you elaborate on Gemma 4 12B capabilities from your experience and benchmarks?


Then you might be missing SWA. Gemma models are extremely memory hungry without


So long as they have flash attention enabled, Llama.cpp enables Sliding Window Attention by default for Gemma 4 models. Even if they're using Ollama or LM Studio I would expect those to mostly be doing the right things.


I would not expect Ollama to be doing the right thing fwiw.


"--context-shift, --no-context-shift ... whether to use context shift on infinite text generation (default: disabled)"

From: https://github.com/ggml-org/llama.cpp/blob/master/tools/serv...


That is obvious. Less obvious is what context shifting does and whether you want it or not.


It will come... all big hardware players (Intel, AMD, Broadcom) and dozens of startups (Tenstorrent, etc.) are working on it...


Hasn't Docker always been just a thin layer of duct tape over existing solutions?


You cannot wear out an SSD through AI inference alone. LLM weights are only read from the SSD, and read operations do not contribute to SSD wear. SSD wear is primarily caused by write and erase operations.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: