Home / 256 GB Mac · Image

256 GB Mac · Mac Studio M5 Ultra 256 GB

Qwen-Image-2.1 on Mac Studio M5 Ultra 256 GB

Mac Studio M5 Ultra 256 GB

mflux 0.23.0mflux 8-bit (-q 8)measured 20 Oct 2026independent check passed
Rank in the class

2 of 2 · overall 40 of 100, as of 20 Oct 2026

Speed 32.5 of 100 (25 %) · my ratings 42.5 of 100 (75 %). Speed is the mean of the two medians: up to 10 s per image it counts 100, above that 1000 divided by the seconds; my ratings are the mean of my 8 ratings, minus 5, times 20. All image setups on 256 GB Mac.

Median per image · enhancer off29.87 s1024×1024, 12 images
Median per image · enhancer on31.59 s1024×1024, 12 images
Enhancer, per textnot measuredno enhancer in this runner
Memory peak36.6 GiB (MLX)MLX memory peak (GiB, unified memory, not comparable with VRAM)
Enhancer off

12 images, enhancer off

Portraitmy rating 8 / 10 · enhancer off
Image I1, seed 42, Portrait, enhancer off
seed 42 · 28.34 s full PNG
Image I1, seed 123, Portrait, enhancer off
seed 123 · 28.36 s full PNG
Image I1, seed 456, Portrait, enhancer off
seed 456 · 28.33 s full PNG
Fire breathermy rating 7.5 / 10 · enhancer off
Image I2, seed 42, Fire breather, enhancer off
seed 42 · 28.49 s full PNG
Image I2, seed 123, Fire breather, enhancer off
seed 123 · 28.90 s full PNG
Image I2, seed 456, Fire breather, enhancer off
seed 456 · 29.72 s full PNG
Action shotmy rating 5 / 10 · enhancer off
Image I3, seed 42, Action shot, enhancer off
seed 42 · 30.45 s full PNG
Image I3, seed 123, Action shot, enhancer off
seed 123 · 30.49 s full PNG
Image I3, seed 456, Action shot, enhancer off
seed 456 · 30.02 s full PNG
Alien forestmy rating 6.5 / 10 · enhancer off
Image I4, seed 42, Alien forest, enhancer off
seed 42 · 30.33 s full PNG
Image I4, seed 123, Alien forest, enhancer off
seed 123 · 30.45 s full PNG
Image I4, seed 456, Alien forest, enhancer off
seed 456 · 30.45 s full PNG
Enhancer on

12 images, enhancer on

Portraitmy rating 8 / 10 · enhancer on
Image I1, seed 42, Portrait, enhancer on
seed 42 · 31.34 s full PNG
Image I1, seed 123, Portrait, enhancer on
seed 123 · 30.96 s full PNG
Image I1, seed 456, Portrait, enhancer on
seed 456 · 30.95 s full PNG
Fire breathermy rating 9 / 10 · enhancer on
Image I2, seed 42, Fire breather, enhancer on
seed 42 · 31.26 s full PNG
Image I2, seed 123, Fire breather, enhancer on
seed 123 · 31.51 s full PNG
Image I2, seed 456, Fire breather, enhancer on
seed 456 · 31.60 s full PNG
Action shotmy rating 6 / 10 · enhancer on
Image I3, seed 42, Action shot, enhancer on
seed 42 · 31.59 s full PNG
Image I3, seed 123, Action shot, enhancer on
seed 123 · 32.06 s full PNG
Image I3, seed 456, Action shot, enhancer on
seed 456 · 32.72 s full PNG
Alien forestmy rating 7 / 10 · enhancer on
Image I4, seed 42, Alien forest, enhancer on
seed 42 · 32.49 s full PNG
Image I4, seed 123, Alien forest, enhancer on
seed 123 · 32.84 s full PNG
Image I4, seed 456, Alien forest, enhancer on
seed 456 · 32.85 s full PNG
Honest notes

What to keep in mind

  • mflux uses its own 8-bit quantization (-q 8, the test plan), not the ComfyUI INT8 ConvRot file of the other boxes. The mflux README names bf16 as the fastest way on Apple Silicon; I did not measure bf16. That is a different recipe, not an error.
  • No enhancer ran on the Mac. The enhancer-on images use the enhancer texts written on the RTX 5090 box; the enhancer time is not measured.
  • mflux uses the scheduler "linear" (its default), not euler / simple, and other noise: the same seed gives other pixels than on the CUDA boxes.
  • Memory is the MLX peak of the unified memory in GiB, not comparable with the VRAM numbers of the other cards.
  • A background service of macOS (mediaanalysisd) used about 130 % CPU at the start of this run and times rose over the run (28.3 s to 30.5 s with enhancer off). The run was not repeated.
How it was run

Setup

  • Model: Qwen-Image-2.1 Base
  • Weights: huggingface.co/Qwen/Qwen-Image-2.1 @d26bb61231c3
  • Quantization: mflux 8-bit (-q 8)
  • Runner: mflux 0.23.0
  • Software: mflux 0.23.0, mlx 0.32.4, Python 3.13.15, macOS
  • Settings: 40 steps, guidance 1.0, scheduler linear (mflux default), no negative prompt, 1024x1024, batch 1, seeds 42 / 123 / 456
  • Enhancer on: No enhancer on the Mac: the enhancer-on images use the texts written on the RTX 5090 box
  • Hardware: Apple M5 Ultra, 256 GB unified memory
Exact command

Exact command and run record

# mflux 0.23.0, 8-bit weights (-q 8), weights from the model repo, offline
HF_HUB_OFFLINE=1 python bench_bild_mac.py qwen --model-path <local copy of the model repo>
# Python API used by the script: QwenImage21(quantize=8, ...).generate_image(seed, prompt, num_inference_steps=40, width=1024, height=1024, guidance=1.0), no negative prompt
Prompts

The four house prompts

I1 · Portrait, I2 · Fire breather, I3 · Action shot, I4 · Alien forest. The full text of the four prompts is in prompts.json.

Credits

Also made this possible

  • Runner on the Macmflux communityGitHub
How to read this

What is like for like here

Every setup made the same 24 images: 4 house prompts (portrait, fire breather, action shot, alien forest; the full text is in prompts.json on each recipe page) × 3 seeds (42, 123, 456) × the prompt enhancer off and on, at 1024×1024, one warm-up image thrown away. The speed numbers are the medians of the 12 images of a mode. With the enhancer on, the model's own prompt rewriter wrote the text first; those texts were written once on the RTX 5090 box and reused on every box, so the enhancer-on images all start from the same text. The enhancer time is measured in its own run and is not in the image time.

The ComfyUI setups use INT8 ConvRot weights (Comfy Org format); the Mac uses mflux with its own 8-bit quantization, so the Mac recipe differs. The same seed gives other pixels on other hardware. I rate pictures I like to look at; it is one person's taste, so read the ratings as my ratings, not as a quality measurement. Image files are published with the metadata chunk removed, pixels identical; the hashes in the time files are those of the published files (png_sha256_original is the hash of the original). All images on this page are AI-generated.