01 · CPU per update
Nearly 4× less CPU
than xterm WebGL.
One dense screen: 240×80 cells rewritten every update, with about 4,800 style changes.
Lower is better. Bars show milliseconds of CPU for parsing plus redraw.
xterm.jsDOM renderer
37.7ms
xterm.js+ WebGL addon
9.8ms
Wraithnative · libghostty
3.1ms
Wraithxterm-compatible
2.5ms
0.6msWraith redraw of the full screen, versus 8.8 ms for xterm WebGL
20bytesper GPU cell, so a full 240×80 screen uploads 375 KiB
1rowuploaded when one cell changes; unchanged and scrolled rows are reused
4.2→2.5mscompatible path, from the first recorded build to this one
Medians from interleaved runs, 10 Oct 2026: Chrome 155, Apple M5 Max, hardware WebGPU,
Wraith build c6a77bd, xterm 6.0 with WebGL addon 0.19. GPU-completed updates, not display
frames. Native figures drive the engine directly, without the worker hop. Your machine
will differ, so race it yourself below.