Memory at rest
2.0×
less memory than the GPUI build
Measured before every release
Launch time, memory and CPU on real Macs, at rest and in use. Every figure is a median, every run is in the repository, and the losses stay on the page.
Apple M3 · 16 GB · macOS 27.0 (26A428) · SolKube 067f19b, November 7, 2026 vs GPUI build b98d194, November 7, 2026
2.0×
less memory than the GPUI build
3.8×
less memory than the GPUI build
6.0×
less CPU than the GPUI build
1.8×
less CPU than the GPUI build
Photo finish
≈
level with the GPUI build
The small print
MacBook Air: Apple M3, 16 GB, macOS 27.0 (26A428). Measured November 7, 2026.
Each figure is the median of every run, so one fast run can't flatter a build. Lens, Freelens and Headlamp come next, on the same Macs.
How we measureApple M3 Max · 48 GB · macOS 27.0.1 (26A434) · GPUI build 7ae76f5, October 28, 2026 vs GPUIX prototype a8b0392, October 28, 2026
2.3×
less memory than the GPUIX prototype
1.3×
less memory than the GPUIX prototype
4.3×
less CPU than the GPUIX prototype
1.5×
less CPU than the GPUIX prototype
2.4×
faster than the GPUIX prototype
The small print
M3 Max 48GB: Apple M3 Max, 48 GB, macOS 27.0.1 (26A434). Measured October 28, 2026.
Each figure is the median of every run, so one fast run can't flatter a build.
How we measureThe method
The script is scripts/bench/bench.mts in the SolKube repository. It clones one commit, builds it once untimed, then measures.
Every launch runs with its own home folder: setup done, an empty kubeconfig, no saved tabs and no network. The numbers are each build's own baseline, and no real cluster is ever contacted.
A small Swift tool spawns the app and polls the window server every 2 ms until the process owns an on-screen window larger than 200 by 200. Ten launches 3 s apart; the median covers the nine warm ones.
Three launches. Each settles for 10 s, idles for 60 s, then gets 60 s of light use: the cursor sweeps the window, it scrolls, and panels and the cluster switcher open and close. Memory is the physical footprint Activity Monitor shows; CPU is a share of one core, summed over the process tree.
Until Lens, Freelens and Headlamp are measured the same way, SolKube is compared with its own earlier builds. SolKube: Today's app: Rust on NSH, drawn with AppKit views. GPUI build: Our previous build: Rust on GPUI, drawn on the GPU. GPUIX prototype: Our first prototype: React components on GPUI.
Raw numbers
Medians from each run file. The same data is at /benchmarks.json.
| Run | Memory at rest | Memory after a minute of use | CPU while idle | CPU during light use | Launch to first window |
|---|---|---|---|---|---|
| SolKubeMacBook Air · 067f19b · 2026-11-07 | 24.8 MB | 29.9 MB | 0.13% | 3.42% | 271 ms |
| GPUI buildMacBook Air · b98d194 · 2026-11-07 | 50.5 MB | 113.9 MB | 0.78% | 6.07% | 270 ms |
| GPUI buildM3 Max 48GB · 7ae76f5 · 2026-10-28 | 67.6 MB | 322.0 MB | 0.92% | 5.65% | 277 ms |
| GPUIX prototypeM3 Max 48GB · a8b0392 · 2026-10-28 | 158.7 MB | 413.1 MB | 3.93% | 8.68% | 678 ms |
Native on Linux
Point it at your kubeconfig, or let it find your EKS, AKS and GKE clusters. Nothing to install in the cluster.
Linux · GTK 4 · No account
Also available for macOS.