Skip to content
COEY
Vision

Vision Apple Silicon Benchmarks

How long GroundSlate's vision models take to describe a still and a six-frame video chunk on Apple Silicon, using the prompts the app actually sends.

Still and video chunk speed by model

Wall-clock seconds, timed through the same tool an AI assistant calls.

Still
One photograph, resized to 768 px on the long edge, sent with the still prompt GroundSlate uses.
Video chunk
Six frames at 768 px in order, asking for the JSON GroundSlate ingests. A real ingest chunk is larger: up to 14 frames at 1568 px.
Fastest still
2.88s
Gemma 4 E2B
Default still
3.49s
Gemma 4 E4B
Fastest video chunk
7.86s
Gemma 4 E4B
Default decode
52
Gemma 4 E4B tok/s still

Apple Silicon Relative Performance Metrics

The same measurements as charts. Each chart has its own scale, and the default model is marked.

  • Default
  • Still
  • Video chunk

Still wall clock

seconds

Still prefill and decode

seconds

Still against Gemma 4 E4B

times

Video chunk wall clock

seconds

Tokens on a video chunk

tokens

Video chunk against Gemma 4 E4B

times

Tokens show how much the model wrote, not how fast. Prefill is the muted segment. Below 1.00× is faster than Gemma 4 E4B.

Rates derived from the same medians
ModelStilldecode tok/sStillms/tokStilltok/s wallVideo chunkms/tokVideo chunktok/s wall
E4B5226392441
E2B7922461953
Qwen 4B7720512147
26B-A4B7120491954
Qwen 8B4633303430
12B3442244423
Speed comes down to how much a model writes

On chunks, Qwen3-VL 4B writes tokens as fast as E4B, about 60 per second, but writes about twice as many, so it takes 1.8 times as long. Speculative decoding and MTP do not run with json_object, so output length decides the time.

Bigger is not always slower

Gemma 4 26B-A4B describes a still in 3.13 seconds, a little faster than E4B. The dense 12B is the slowest at 6.45 seconds. On chunks, 26B writes about twice as many tokens as E4B, so it takes longer even though it writes them faster.

Makers

The companies behind these models.

Curated MLX vision models

Every model GroundSlate offers for download, including ones not measured yet.

How vision ingest works on a Mac

The prompts sent to the vision model

The still prompt is exactly what ingest sends. The chunk prompt is the one timed here. Ingest adds a longer set of rules about merging shots.

Still prompt
You are a still-photo analyst. Look at this single photograph. Reply ONLY with compact JSON: {"desc":"a full paragraph of 4-6 factual sentences about this photograph. Cover, in this order: who is present and what they are doing; where this is and what kind of place it is; the notable objects and any text visible on signs, screens or clothing; the light, weather and time of day if they are apparent; and anything distinctive worth remembering about the moment. Write only what you can SEE. Do not speculate about feelings, relationships or backstory, do not pad with generic phrases, and never begin a sentence with 'The image shows' or 'This photo captures' — state the observation directly","subject":"<what the main subject is>","shot":"wide|medium|close|macro","setting":"indoor|outdoor|unknown","venue_type":"<what KIND of place this is: beach, restaurant, playground, living room, parking lot, forest trail, ... or unknown>","notable_objects":["<up to 5 salient objects>"]}. Answer "unknown" for setting or venue_type whenever you are unsure — abstaining costs you nothing. venue_type is a KIND of place, never a NAME: 'a beach', not 'Bondi Beach'. CRITICAL: never invent or guess the name of any person or business. Do NOT read a name off signage or clothing and attribute it to a person. Describe people generically — 'a woman', 'a child on a swing', 'a man in a red jacket'. Use a person's name ONLY if it is explicitly supplied to you in the context above; otherwise use no name at all. NAME OBJECTS SPECIFICALLY when you can actually identify them: 'a can of Coca-Cola' beats 'a drink', 'a yellow school bus' beats 'a vehicle'. Read product labels and use the brand when it is legible. But do NOT guess a specific dish, product, or place name if you are unsure — describe what you actually see (shape, colour, setting), not a confident wrong label. Trust any provided context over your assumptions.
Video chunk prompt
Video chunk prompt
You are watching one continuous segment of a video (t=0.00s to 12.00s), given as 6 frames in chronological order:
Image 1 = t=0.00s
Image 2 = t=2.00s
Image 3 = t=4.00s
Image 4 = t=6.00s
Image 5 = t=8.00s
Image 6 = t=10.00s
No people have been identified in this segment.
Describe this video segment. Reply ONLY with JSON:
{"shots":[{"start":<sec>,"end":<sec>,"desc":"<=20 words","subject":"<s>","shot":"wide|medium|close|macro","motion":"static|slow|fast","center_x":<0..1>,"setting":"indoor|outdoor|unknown","venue_type":"<kind>","notable_objects":["<up to 5>"]}],"best_segment":{"start":<sec>,"end":<sec>,"reason":"<=15 words"},"track":[{"t":<sec>,"x":<0..1>} x6],"summary":"2-4 factual sentences. Each subject AT MOST ONCE.","visual_kind":"footage"}

How these numbers were measured

Machine
MacBook Pro, Apple M3 Max, 64 GB unified memory
Engine
mlx, mlx-vlm 0.6.10
Sidecar
mlx_vlm.server on 127.0.0.1:8788
Batching
Continuous batching on
APC
Off
Response format
json_object
Max tokens
4000
Warmup
1 discarded, then 3 stills and 2 chunks
Speculative decoding
off
Default model
mlx-community/gemma-4-e4b-it-4bit
Models locked
Yes
Chunk note
The timed chunk used six frames and the same JSON schema as ingest. Ingest also adds a longer set of rules about merging shots and naming people, which the timed prompt leaves out.

Questions

How fast is Gemma 4 E4B on a Mac?
On a MacBook Pro, Apple M3 Max, 64 GB unified memory, still takes 3.49s and video chunk takes 7.86s. Timed through the tool an agent calls.
Is Gemma 4 E2B faster than Gemma 4 E4B?
On still, yes: 2.88s against 3.49s. The order is not the same on every test, and the suite table has them all.
Why is Qwen3-VL 4B slower on video chunks if it decodes at the same rate?
On chunks, Qwen3-VL 4B writes tokens as fast as E4B, about 60 per second, but writes about twice as many, so it takes 1.8 times as long. Speculative decoding and MTP do not run with json_object, so output length decides the time.
Is a bigger vision model always slower on the reference machine?
Gemma 4 26B-A4B describes a still in 3.13 seconds, a little faster than E4B. The dense 12B is the slowest at 6.45 seconds. On chunks, 26B writes about twice as many tokens as E4B, so it takes longer even though it writes them faster.
Which machines are in this dataset?
MacBook Pro, Apple M3 Max, 64 GB unified memory (Reference Mac).
Which vision model does GroundSlate use by default?
mlx-community/gemma-4-e4b-it-4bit. Gemma 4 E4B, 5.2 GB on disk.

These are the models GroundSlate ships today. Something out of date? Tell us.