SPB Git

spb/wp40_uqo

Public MIT
2.7 KB

# docs/capabilities.md — measured capabilities (2026-11-02)

# Metal (laptop, Apple M5 Max)

Property Value How measured
Device name Apple M5 Max MTLCreateSystemDefaultDevice().name
Unified memory yes hasUnifiedMemory
maxBufferLength 28 753 MB property
recommendedMaxWorkingSetSize 38 338 MB property
maxThreadsPerThreadgroup 1 024 property
threadExecutionWidth (SIMD) 32 pipeline state
GPU families Apple1 … Apple10, Metal3 supportsFamily:
Ray tracing / 32-bit float filtering / argument buffers yes / yes / tier reported properties
FP64 in shaders no (compiler error "'double' is not supported in Metal") runtime + offline compile of a double kernel
Runtime MSL compile (trivial kernel, cold) 34.6 ms newLibraryWithSource: wall-clock
Offline toolchain Apple metal 32023.922, target air64-apple-darwin27.0.0 installed during audit
1 M-element elementwise square 0.029 ms GPU time (GPUEndTime − GPUStartTime) docs/evidence test program

Consequences for the design: FP32 everywhere on GPU with compensated (Kahan/Neumaier) and pairwise reductions, FP64 accumulation of sufficient statistics on CPU when the reduction length exceeds a documented threshold, and GPU results always compared to the CPU FP64 reference with method-specific tolerances. "Precision" is reported in every Estimate.

# CPU (laptop)

Apple M5 Max 18 cores (6 performance + 12 efficiency), 48 GB; Accelerate BLAS/LAPACK; Apple clang 21 supports C++20 and -O3 -mcpu=apple-m4 (apple-m5 not yet in clang 21's list; measured flags recorded in the benchmark manifest).

# Cluster

See docs/audit.md §3 (22 reachable nodes, Metal 4 on all, GPU cores 10–60, RAM 8–96 GB, most nodes without Homebrew in the SSH PATH, m2m8b without developer tools). Inter-node SSH works only on LAN IPs (Tailscale ACL); the laptop reaches nodes by alias.

# FinData OS

See docs/audit.md §2 and docs/evidence/findata_openapi_2026-11-02.json. Measured: Arrow IPC page of 1 599 bars = 246 KB; export of 34 607 rows ready in 1.5 s; dataset versions pinned (ETF 1m = 5162 at audit time).

# Software versions (laptop, audit time)

cmake 4.3.2 · Apple clang 21.0.0 (clang-2100.4.1.1) · Xcode 27.2 · macOS 27.0 · Python 3.12.13 (venv) · nanobind 3.1.0 · numpy 2.5.4 · pyarrow 26.0.0 · arch 8.0.0 · statsmodels 0.15.0 · scipy 1.18.1 · polars 2.1.0 · duckdb 2.0.0 · exchange-calendars 4.13.2 · R 4.6.1 · highfrequency 1.0.3 · rugarch 1.5.6 · TeX Live 2026 · latexmk 4.88. Homebrew C++ packages installed during Phase 0: filled in by scripts/record_environment.sh into experiments/manifests/environment_laptop.json (versions are read from brew list --versions, never typed by hand).

Files · a9731b7fb3254b6175c7c579307f61336c22d6c8
Menu

Theme