github gwenn-ha-dev/Siliconed v0.18
Siliconed 0.18

3 hours ago

The map measures the Mac, then plans every computation from it

  • A model of this Mac's engines, no longer a table of routes: the map times what the GPU, the CPU's
    matrix unit and the Neural Engine each compute, by shape (the weight's length counts, so does its
    lift onto the Neural Engine), and how much of its speed each keeps beside the others. Every matrix
    product and attention of a render is then split over the engines by that model, down to the rows,
    before its first computation. Each render compares what each kind of computation took with what the
    map predicted.
  • The Neural Engine reads int8 weights as published: on the Compact of Krea 2, Qwen-Image-2.1 and
    MOSS-Image, part of the products run on it in 8 bits, beside the GPU's. On an M1 Pro at 1024², every
    evaluation at full size, those three Compacts take 24 to 37 % less time than their Standard: Krea 2
    140.9 s (213.3), Qwen-Image-2.1 85.8 s (135.6), MOSS-Image 85.0 s (111.7)
    (Numbers).
  • A measure always gives a map: nothing is orange any more. How sure the measure is of each
    engine's figure is written beside it (± a few percent), and what it found is said with its effect on
    the plan. A route that computed wrong, or whose load ended the measuring process, is left out, and
    the measure goes on without it.
  • Right in real life: the map no longer asks you to leave the Mac alone. Activity Monitor or
    another window drawing beside it no longer moves its figures; calls that disagree are read on their
    fast side. The measure launched by the app now reads the GPU and the Neural Engine together as well
    as one launched from the Terminal.
  • About a minute, five at most, without any model: once per version, and the same measure on every
    Mac. The memory sets how big the probes are, never the time they would take, so a slower Mac no
    longer measures less than its plan needs, and a busy start no longer measures the same Mac two ways.

Measure This Mac reads plainly; a measure applies to the next render

  • The sheet titles every column: each route's speed, its share of the GPU's peak (the GPU's matrix products only, with the peak in the title), “Exact” (✓), then what each engine keeps of its speed when the engines work together. The Neural Engine's 8-bit route is listed with the others.
  • A measure applies to the next render, no longer to the next launch: never to a render under way, so that a render still reads one plan from start to end. From then on, one seed can give an image a little different from before the measure.
  • The rack says how the weights are stored: a label on the DiT, the text encoder and the VAE (int8, Q8_0, Q4_K_M, bf16…), read from what is installed, beside the label that says what computes (“computes fp32”). A borrowed Mac publishes them too.

Prompt Lab: the inputs of a render, prepared

  • A window of its own, in the Window menu (⌥⌘L), or from the wand beside the rack's Prompt: images
    on one side, one text on the other, and a line under them, “The rack will receive”, that says what is
    carried. Carry to the Rack fills the rack's boxes — its Prompt, where ⌘Z in the field (or Edit › Undo)
    brings the old one back, and its Images, which have no undo and are said to be replaced. Nothing is
    applied on its own.
  • Every image has a role: starting image (image 1, the one a Qwen-Image-2.1 edit changes; it gives
    the format), reference, or describe only. The first image dropped is the start, the next ones
    references; on the models that read no image they are describe only. Three images at most.
  • Named subjects move here, out of the rack and out of Settings, where they were a beta switch:
    name an image, cite it as @name in the text, and the lab hands the rack the prompt translated
    (“the person in image 3”) and the pictures, numbered after the start and the references. The rack
    knows nothing of them. Still in memory only; silicontrol subjects and add "@name" stay. A @name
    cannot sit inside a {a|b} group. The PNG of the render keeps the prompt the model read, as for
    any render of the rack.
  • Rewrite and Describe mix in one text (beta), written into the field as the writer goes: Rewrite
    works on all of it, additions and removals marked; Describe writes at the caret, or fills an empty
    text; ⌘Z undoes either. A @name is put aside while the writer rewrites and put back; one it loses
    is said, never dropped in silence.
  • Only those two wait: during a render, or without the writer installed, naming, framing, roles and
    Carry go on; Rewrite and Describe wait, under one sentence.
  • Following another Mac: Rewrite and Describe are off and say so, while images, roles, subjects
    and Carry fill the rack you see, which sends its references to the Mac that renders.
  • The writer is a model already installed: Qwen-Image-2.1's text encoder, Qwen3-VL-8B, made to write.
    Only its output layer is missing from the installed model: Install the Writer downloads it from the
    same repository, 1.25 GB, by byte range. It needs Qwen-Image-2.1 installed, and reads its layers in a
    plan chosen within the memory budget before the first word: on a 16 GB Mac, the Compact's all from
    memory; on an 8 GB Mac, or with the Standard on 16 GB, part of them from the disk at each token, more
    slowly.
  • Our instructions, one per model, drawn from what each publisher says of its prompts: every element
    of your prompt is kept, quoted text word for word, nothing removed, softened or moralized.
  • Never during a render: an image that starts stops the writer, and Rewrite and Describe wait.
  • Its weights go back after every gesture, so the Mac's memory is free between two of them: on an
    M1 Pro with the Compact, the first word comes after about 10 s for Rewrite and 25 s for Describe,
    which reads the image first, then about 12 tokens a second, on the GPU.
  • Checked against the reference: greedy decoding gives the same tokens as transformers in fp32
    (siliconed check qwen-image-2.1 writer).

The menus and Settings, tidied; VoiceOver can drive it

  • A Help menu that helps: Siliconed Help (this guide), Remote Control Help (silicontrol's), Report a Problem…, then Measure This Mac….
  • Render Again (Same Seed) replaces “Redo” (⌘R); the rack's batch field is now Batch.
  • Window › Show Siliconed brings the window back (⌘N is gone), Close Window has ⌘W back, Full Screen moves to ⌃⌘F, and “Copy the silicontrol command” is Copy as Terminal Command.
  • Generate steps aside in the Render menu while the exploration panel, the Prompt Lab or Settings is the key window, so ⌘↩ reaches that window's own button.
  • Settings › Advanced reads This Mac, Command Line, then Beta: More Solvers (formerly Developer Mode) and Negative LoRA Strengths, with the Beta badge Rewrite and Describe wear too. The comparison choice left Settings for the canvas toolbar, and Measure This Mac left the Models window.
  • Clear History… asks nothing when every image is saved (⌘Z brings the history back); “Accept and Render” is no longer the default button, so Return cannot accept a license by accident.
  • VoiceOver: labels on every icon button, on the images (read as their prompt), on the rack's tiles and on the progress, which now speaks in percent; the curtain is one adjustable element (up and down move the line, or switch the image in Switch); the toast is announced. Click targets of the small close and stop buttons grow to 24 pt, and Reduce Motion now stops every animation of the app.
  • Keys stay with the control that has them: with a slider, a stepper or a button focused, the arrows and Space are the control's, not the history's.
  • Smaller things: “Reset to 0.8” in a LoRA's context menu; the rack's footnote and the preview switch say what they change (the preview does not change the image); durations follow the system's format.

One seed, diffusers' image, on all five models

  • The same seed now gives the same starting noise as diffusers on Z-Image, Anima and Krea 2, as
    Qwen-Image-2.1 and MOSS-Image already did: PyTorch's own torch.randn, reproduced to the bit. So the
    same seed gives a different image on those three, once, and it is now the one diffusers starts from.
    Qwen-Image-2.1 and MOSS-Image do not change by a bit.

Fixed

  • Editing with a reference image crashed on some Macs (M4, macOS 26.6): Qwen3-VL's 72-wide attention heads now run padded to 128, exactly. The reporter's own diagnosis pointed straight at it. (#11)

Also

  • One spinner per render, in the progress under the image; the sidebar keeps its width when the
    size turns square.
  • The Mac you compute on, beside Chain: its own icon, as in About This Mac, greyed until it is
    measured; another Mac's when you compute on it.
  • The rack's footnote says what the installed version computes in: the Standard in fp32 end to end, every stage verified against the reference; a Compact or a Light in fp32 on 8- or 4-bit weights as published, with part of the DiT in fp16 on the Neural Engine when it is on.
  • The Dock icon's progress bar moves. It never did: the tile now draws the icon and the bar itself.
  • MOSS-Image's Civitai metadata credits the SFT page and the DMD LoRA its 8 steps run under, so a Remix on Civitai gets the whole recipe.
  • Sharing the map is an option: under Share… in Measure This Mac, never the default button.
  • A mouse's wheel zooms on the image and in the curtain, toward the pointer; a horizontal wheel still
    moves the image, and the trackpad does not change. (#10)
  • Switch, beside Side by Side and Curtain: two images one at a time, at the same place and zoom; a
    click, or ← →, shows the other. (#10)
  • Faster Rendering is chosen per model, like the Neural Engine: on by default for the Compact and
    the Light, off for the Standard, which stays the image checked against the reference. The choice is
    saved with the image, so Render Again gives the same one; silicontrol set faster-rendering on|off --model ID sets one model's, silicontrol models tells each. On a Standard, a render at the
    default settings therefore takes longer than in 0.17
    , for the recipe at full size. If you had
    turned Faster Rendering off, it stays off for the models you have.
  • Faster Rendering, measured: on the Compact at 1024² it takes 31 % off a render on Krea 2, 21 %
    on Z-Image, 17 % on Qwen-Image-2.1, 19 % on Anima and 7 % on MOSS-Image.

Don't miss a new Siliconed release

NewReleases is sending notifications on new releases.