// BARE-METAL ENGINE

Performance.

Two engines, built from the metal up — one for the drawings, one for the numbers.

Spreadsheet engine
10M+
Formula steps per second.
PDF engine
120 FPS
Pan and zoom. Sharp in ~100 ms.
Revision align
~2S
Instant comparison, no batching, no waiting.
Drawing sets
100K
Drawings in one project.
01 / SPREADSHEET ENGINE

A rocket ship under the worksheet.

=SUM.project([:quantity] * [:cost]) prices the entire job in one line — the answer lands in milliseconds.

Hyper-optimised kernel~10M formula steps a second.
Power SyntaxBuilt for estimating work, not a generic spreadsheet.
02 / PDF ENGINE

120 FPS pan & zoom. Sharp in a blink.

The viewer moves like a game because it's built like one — pan, zoom, decode, and sharpen in a single native pipeline. Vector display sharpening then redraws the same PDF, on the same screen, up to twice as sharp.

Single native pipelinePan, zoom, decode, sharpen — no plugin handoffs.
Up to 2× sharperSame drawing, same zoom, same screen.
03 / ALIGN

Instant comparison changes the workflow.

Auto-align takes two seconds — no batch jobs, no setup, no waiting. At that speed, comparison stops being something you schedule and becomes something you just do: pick two revisions, align, move on.

No batch, no setupAlign is interactive, not a queued job.
~2 secondsFor typical revision pairs.
04 / ATTENTION-BOUND WORK

100,000 drawings. Feels like 100.

The whole job lives in one project — every drawing, worksheet, and revision — and it stays as fast as a small one. Both engines pour everything into what's in front of you, and nothing into what isn't.

ViewerPans the drawing on screen; the other 99,999 might as well not exist.
WorksheetsComputes the cells your formula needs, not the book.
// technical details — what's behind this page's claims · July 2026

Purple Hammer's advertised times are conservative envelopes, not peaks: typical measured runs land at 25–50% of them. We round against ourselves. Every claim below rests on a measurement, a mechanism, or both, and each entry states what was measured, on which hardware, and why the number holds.

Full detail — measurements, mechanisms, conditions

Rendering — "120 FPS"

On typical CAD drawings, the viewer sustains the full 120 FPS of a 120 Hz display. The screen's refresh rate is the cap, not the engine.

A stress test on mid-range hardware (Ryzen 7 8845HS, Windows 11) under programmatic pressure — a pan/zoom command every 6 ms, sustained, on a 1.38-million-object CAD file — still held 110–118 FPS with zero dropped frames.

Spreadsheet engine — "10M+ steps/sec"

Normal workloads solve essentially instantly, typically 5–50 ms. Even very large projects with typical workloads — uniform-ish columns across sheets, a handful of aggregators — solve much faster than 10 million dependencies per second.

On the same mid-range hardware (release build, production defaults), an adversarial test — four million dependency visits, ~3.3M distinct inputs, zero cache reuse — solved in 267 ms with uniform formulas and 365 ms with diverse formulas: roughly 11–15 million dependency steps per second. Solve time stays linear out to 10-million-cell tests. 10M+ per second is a floor, not a peak.

Revision auto-align — "~2 seconds"

Typical aligns land in 300–1,000 ms, handled by the first-line algorithms. Across real projects and machines the weighted average is closer to ~500 ms.

When the first line can't lock — poor scans, heavy raster — heavier second-line algorithms take around 2 s, and up to 5–7 s for complex scans on low-end hardware. We publish ~2 seconds because it covers the second line too.

Project scale — "100,000 drawings"

A project is a set of watched folders. The in-RAM overhead per inactive file is a single hash — still negligible at 100,000 files on modern hardware. Cost follows what you actually open, never the project's size.

The workbook is the same shape: a query loads only what it needs.

Test hardware

Reference hardware is mid-range by intent: Ryzen 7 8845HS (Windows) and Apple-silicon M-class (macOS).

Fast is part of the product.

This isn't benchmark bragging. It's why a 100,000-drawing job feels small.