Hardware

What is documented here

Wirken runs on commodity hardware. The four configurations below are reference builds for operators who want a hardware-side answer to "what should I run wirken on?" None is a product line. All four are parts lists. You or your supplier can buy the same parts and build the same machine.

Spule

Spule is wirken on a Raspberry Pi 5: switchboard, adapters, audit log, and WebChat on the local box, LLM over TLS, no inference weights held locally. Wirken is a single static binary linked against musl, and the aarch64 build installs from the same one-line installer with no runtime underneath it. The Cortex-A76 includes the ARMv8 cryptography extensions, so SHA-256 hashing for the audit chain uses hardware instructions. Spule has less capacity than Fern for concurrent channels and retained history.

SystemRaspberry Pi 5, 8 GB
CPUQuad-core Cortex-A76, 2.4 GHz
RAM8 GB LPDDR4X-4267
Storage256 GB NVMe, M.2 2230 on M.2 HAT+
NetworkGigabit Ethernet, Wi-Fi 5
Power27 W USB-C
CoolingOfficial active case, PWM fan

These parts ship as a single kit, the BerryBase Raspberry Pi 5 NVMe Starterkit, at about €229.

Wirken Spule reference build
Spule reference build. Raspberry Pi 5 with 256 GB NVMe on M.2 HAT+ in the official active case.

Fern

Fern hosts the switchboard, the adapters, the audit log, and the WebChat surface, and reaches the LLM over TLS. The local box never holds inference weights. Fern fits the confidential-inference posture cleanly: the only outbound inference connection is an attested HTTPS path, which can be pinned at the network layer.

SystemBeelink SER10 MAX
CPURyzen AI 9 HX 470
GPURadeon 890M integrated
RAM32 GB DDR5-5600
Storage1 TB NVMe
Network10 GbE, Wi-Fi 6
Wirken Fern reference build
Fern reference build. Beelink SER10 MAX chassis with integrated graphics; no discrete GPU.

Heim

Heim is the aggregation box. It runs inference on the machine itself: embedding generation and the librarian side of Zirkel, wirken's research aggregator, and the scoring passes of Lyrik, the static-analysis skill. There is no outbound LLM connection.

CaseFractal Design Terra
CPURyzen 9 9900X
CPU Cooler70mm low-profile AM5, 120mm fan
MotherboardAM5 Mini-ITX, B650E, Wi-Fi 6E
RAM64 GB DDR5-6000 (2× 32 GB)
Storage4 TB NVMe PCIe 4.0+
GPUNVIDIA RTX Pro 4500 Blackwell 32 GB ECC GDDR7
PSU850W SFX-L Platinum
Wirken Heim reference build
Heim reference build. Fractal Design Terra mini-ITX chassis with workstation-class discrete GPU.

RAIV

RAIV, a redundant array of inexpensive videocards, is an inference server for open-weight models rather than a wirken host. Seven used 32 GB datacenter GPUs form two mirrored groups of three plus a spare. One group holds a 100B-class model at four-bit with room for context. Each group runs its own llama-server process, and nginx or Caddy in front checks /health on both and fails over: when a card in one group fails, the other group serves, the spare replaces the failed card, and one in-flight conversation is lost. Wirken, on a Fern- or Heim-class host, reaches it over the network as an OpenAI-compatible endpoint. Recent Ollama releases omit the gfx906 support these cards need, so the stack is llama.cpp on ROCm. Each card is power-limited to about 150 W, because generation speed is bound by memory bandwidth, not compute.

GPU7× AMD Instinct MI50 32 GB, used (two mirrors of three, one spare)
VRAM224 GB total, 96 GB per mirror
MotherboardSupermicro H12SSL-i
CPUEPYC 7302, SP3 cooler
RAM64 GB DDR4-3200 ECC RDIMM (4× 16 GB)
Storage2 TB NVMe
PSU2× 1,200 W ATX 80+ Gold
Risers7× PCIe 4.0 x16, 30 cm
CoolingFan shroud and 40 mm fan per card, 8-channel PWM controller
Chassis8-slot open GPU frame
SoftwareUbuntu 24.04, llama.cpp for gfx906 on ROCm 7.2, nginx or Caddy

The parts come to about €3,530, with the GPUs bought used at about €220 each. Build notes: Introducing RAIV.

RAIV: a mirror ball
RAIV. A redundant array of inexpensive videocards.

How to use this page

These are bills of materials. Source the parts and build the box, or hand the list to an integrator who will. The wirken binary does not know the difference between a reference build and a comparable machine you assembled yourself; it asks the OS for a vault key, a Unix domain socket, and a network interface, and Spule, Fern, and Heim all provide those the same way as any other Linux or macOS host. RAIV runs no wirken at all; wirken reaches it as an inference endpoint. If you have a stricter security target than these references aim at, the components that matter to a wirken deployment are the same components a hardened workstation already gets right: full-disk encryption, a real TPM, secure boot, and an OS keychain you trust to hold the vault key.