A GPU photo editor I use every day.

RAW editor for macOS. Edits are a graph of GPU compute nodes. A slider re-runs only the nodes after it. I use it on my own 42 MP camera files.

Click a stage.

Nineteen stages, sensor to screen.

Click a stage, or play a photo through it.

A slider re-runs only the nodes after it.

Upstream outputs stay cached on the GPU. Pick a control.

One slider tick, start to finish.

What the benchmark says.

orion-bench on a real Sony A7R III raw, 7968 × 5320 (42.4 MP), Apple M4.

Where the GPU time goes.

205 nodes. Most stages are one node; pyramids make the rest. Click a segment, hover a node.

How it is timed

Normal renders put all dirty nodes in one command buffer. Profiling mode (Pipeline::setProfiling, used by orion-bench) gives each node its own, so each node's GPU time is separate.

Tests render real GPU output. Agent edits need approval.

Nine gates

Results from the run on 2026-10-06.

Agent edits over MCP

    Orion
    Before
    Proposed
    No proposal.

    An AI agent proposes. The photographer decides.

      Orion
      Before
      Proposed
      No proposal.