All projects
SoftwareIn Progress

Crucible

A C++ performance engineering microsite. Each post benchmarks a focused optimisation problem — cache effects, branch prediction, SIMD — with naive vs tuned implementations, real measurements, and D3 visualisations.

C++CMakeNext.jsMDXD3ShikiPerformance Engineering

// Overview

Crucible is a focused performance engineering microsite. Each post takes a single optimisation problem, implements it naively, tunes it, measures both on real hardware, and shows the gap — with the instrumentation visible so the result is reproducible, not just claimed.

The benchmark harness is Google Benchmark + CMake, running on a pinned AMD Ryzen 7 3800X (Zen 2, 8 cores, no turbo, isolated cores via cpuset). Every post commits the raw JSON output alongside the code, and the methodology page documents the measurement discipline in full — governor, turbo state, core isolation, repetitions, and what's reported.

Post topics progress through the memory hierarchy and concurrency model: branch prediction, false sharing across cache lines, SIMD vectorisation (SSE → AVX2), and lock-free data structures. The Zen 2 CCX topology — two 4-core clusters sharing L3 only via Infinity Fabric — surfaces as a recurring character, giving results that differ meaningfully from what an Intel SoC would show.

Visualisations are D3, syntax highlighting is Shiki, content is MDX. The site is statically exported and deployed to AWS Amplify.