Skip to content

Philosophy

This section provides reproducible benchmark results across the Dalek cluster, covering both the Dalek rack (high-performance x86 mini-PCs with discrete GPUs) and the Monolithe rack (heterogeneous SBCs).

Why Benchmark?

Dalek was designed from the ground up for reproducible energy-efficiency research. Benchmarks serve two goals:

  1. Characterize hardware: understand memory hierarchy, compute throughput, and micro-architectural behavior across a wide range of SoCs and CPUs.
  2. Enable fair comparisons: provide a common baseline so that results from different nodes and partitions can be meaningfully compared.

Tools

Benchmark What it measures
bandwidth CPU memory bandwidth (read, write, copy, triad) — pinned per core
cpufp CPU floating-point throughput (GFLOP/s)
clpeak GPU OpenCL compute and memory bandwidth
FMDT Real application: meteor detection on Full HD video
AFF3CT Real application: channel coding (polar codes)
MuRB N-body simulation across CPU (MIPP SIMD) and GPU (CUDA, OpenCL)

How to Read the Curves

  • Memory bandwidth curves show throughput (GB/s) as a function of buffer size. Three characteristic plateaus appear: L1, L2/L3, and DRAM, revealing the memory hierarchy.
  • One thread per measurement: each curve corresponds to a fixed number of threads, all pinned to physical cores to avoid OS scheduling noise.
  • Raw data: all CSV source files are available in assets/raw/ for independent analysis.

→ Dalek Rack Benchmarks — x86 CPUs, Nvidia/AMD/Intel GPUs

→ Monolithe Rack Benchmarks — ARM, RISC-V, Apple Silicon SBCs