{
  "schema": "s2s-bench-v1",
  "exhibit": "speeds-from-ram-alone",
  "dataset": "speeds-from-ram-alone-2026-11-03",
  "generated_utc": "2026-11-06T04:40:46Z",
  "licence": "CC BY 4.0",
  "attribution": "strata→signal research, research.strata2signal.com",
  "contact": "hello@strata2signal.com",
  "what_this_is": "The records behind the exhibit *Speeds from RAM alone* (https://research.strata2signal.com/speeds-from-ram-alone/): what language models write at with no graphics card in the path, measured on three machines under one registration frozen 2026-11-01T15:09:22Z, every card in each machine hidden from the run and proven unused. A laptop (Intel Core Ultra 9 290HX Plus, 64 GB of DDR5-5600) and a two-channel desktop (AMD Ryzen 7 3700X, 32 GB of DDR4) ran gemma4:26b and mistral-small3.2:24b under Ollama 0.32.15 at two thread settings each; an eight-channel desktop (AMD EPYC 7532, 128 GB of DDR4-3200) ran Qwen3.8-Flash-Next IQ3_S under llama.cpp build 11514 at 8, 32 and 16 threads. Here, for each machine in its own folder: the bench's own summary, the STREAM triad's receipt and the one-line RAM-RECEIPT the run printed.",
  "run_id": "speeds-from-ram-alone-2026-11-03",
  "run_window_utc": {
    "registration_frozen_utc": "2026-11-01T15:09:22Z",
    "eight_channel_desktop_utc": [
      "2026-11-03T07:30:01Z",
      "2026-11-03T07:59:09Z"
    ],
    "two_channel_desktop_utc": [
      "2026-11-04T15:39:29Z",
      "2026-11-04T16:16:21Z"
    ],
    "laptop_utc": [
      "2026-11-05T16:10:36Z",
      "2026-11-05T16:36:34Z"
    ],
    "note": "Three runs on three days, each from its run's own start and end as its summary records them (`outer.started`, `outer.ended`); the registration was frozen before the first and amended twice in writing, on 2026-11-02 and 2026-11-03, before the two-channel desktop ran."
  },
  "cut_by": {
    "tool": "tools/kit_sanitise.py",
    "how": "Every file below was COPIED from the bench's own record and then rewritten only by the named rules, applied in the order they are listed here, by one program. Nothing was edited by hand, nothing was reworded, and nothing was dropped from inside a file. `--check` re-derives every byte from the private record and refuses on a single byte of drift; `--fence` proves that no figure moved.",
    "rule_order": [
      "digest-withheld",
      "binary-path-withheld",
      "energy-counter-path-to-words",
      "machine-name-to-page-name"
    ],
    "files_cut": 9
  },
  "sanitisation_rules": {
    "digest-withheld": "the withholding rule every kit cut by rule on this shelf has carried since 2026-09-29 (UTC): a sha256 the record itself printed — whole, shortened to its first 8 or more hex characters, or written head…tail — of a file as it stood BEFORE a rule below rewrote it would become the literal `withheld-2026-09-29`, because beside the rewritten copy such a digest would check a guess at what the rule replaced. This record prints no digest of any file, so the rule withholds nothing here.",
    "binary-path-withheld": "the path the STREAM triad's program was run from, the value of each triad receipt's `binary` field, becomes the literal `withheld-2026-11-06`: one path runs through a private home directory, one through a bench folder on another disk and one through a run folder named for the machine, and a path measures nothing. The receipt block beside it is the reading, and it is unchanged. The rule matches the field by its key and cuts the whole value, never a value it holds.",
    "energy-counter-path-to-words": "the laptop summary's `rapl_source`, which named the local file its energy counter was read from, becomes the words `the processor's RAPL package-0 counter (NOT WALL)`. The other two machines' `rapl_source` lines name no path and are unchanged.",
    "machine-name-to-page-name": "the machines' private names, and the run ids built from them, become the names the page gives the machines, each run id dated by the day it ran: the `run_id` field and the RECEIPT line's run (`laptop-2026-11-05`, `two-channel-desktop-2026-11-04`, `eight-channel-desktop-2026-11-03`), and the `box` field and the RECEIPT line's first word (`two-channel-desktop`, `eight-channel-desktop`; the laptop's box field already read `laptop`). This shelf publishes what a bench measured, never which box ran it."
  },
  "rule_firings_total": {
    "energy-counter-path-to-words": 1,
    "machine-name-to-page-name": 10,
    "binary-path-withheld": 3
  },
  "what_was_not_touched": "Only what a rule rewrote, each rule counted per file in `provenance.json`: the triad program's path in each triad receipt to `withheld-2026-11-06`; the laptop's energy-counter path to words; and the machines' private names and the run ids built from them to the names the page gives the machines. Every median, every run's figures, the no-card legs, the bandwidth rule's k and band, the eight-channel desktop's ceiling, tests and pair rows, the load-average strings and the triad's own lines are as the bench wrote them. No figure moved on the way out, and `index.json` carries the sha256 of every file it lists, as served.",
  "omitted": {
    "The per-run rows.": "Each run's `rows.jsonl` is not here: it carries the engine's command lines with home and model paths, the shape of the request bodies and the pre-read's file path. Every run's figures the page prints are in its machine's `summary.json`, under `arms[].runs[]`.",
    "The telemetry.": "The one-second host telemetry (`telemetry.csv`) and, on the eight-channel desktop, the window's root sampler (`root-1hz.csv`), which names the live services' processes on the cards, are not here. The per-phase throttle counts and package temperatures the laptop section quotes were read from them; the summaries carry each run's label and its hottest sensor.",
    "The registration's files.": "The pin file (`plan.json`, which carries paths and the frozen prompt's byte count and hash), the sandbox's own probe and argument files, the status and unit logs, the laptop's restore log and timer markers, and the eight-channel desktop's window log folder (it names seats and ports) are not here. The registration and its two amendments are cited by date on the page, not shipped.",
    "The prompt.": "The frozen prompt's text is in no file here and is published nowhere; the summaries and receipts carry none of it."
  },
  "files": [
    {
      "file": "laptop/summary.json",
      "role": "The bench's own summary of one machine's run, as its reader wrote it from the run's rows and telemetry: every scored run's figures (writing speed by the engine's count and by the client's clock, prompt-reading speed, the first word, the CPU package's energy while writing, reading the prompt and over the whole request where the counter could be read, NOT WALL, the hottest CPU sensor, the other work on the machine in cores, and the THROTTLED, BOX SHARED and cold-page labels), each arm's medians of three, the triad's best and worst, the idle package reading, the no-card legs and their verdict, and the bandwidth rule's k and verdict where it was registered (on the eight-channel desktop instead: the ceiling, each block's share of it and the two registered expectations).",
      "media_type": "application/json",
      "bytes": 11245,
      "sha256": "9bfffdc2f746d58a5e9c66f05948dedc142b8733927564a082384bcb363d2203",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "energy-counter-path-to-words",
        "machine-name-to-page-name"
      ],
      "strip_counts": {
        "energy-counter-path-to-words": 1,
        "machine-name-to-page-name": 1
      }
    },
    {
      "file": "laptop/triad.json",
      "role": "The STREAM triad's receipt as the bench wrote it: the program's own lines (threads, array size, working set, ten reps with the first discarded, the best and worst of nine in GB/s, the checksum), the load average before and after, and the run's start and end in Unix seconds (UTC).",
      "media_type": "application/json",
      "bytes": 659,
      "sha256": "45fd5cafdc06ecc79e4a35fdfb6d8707ca6b2e774d79b64e3778137f92d8af21",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "binary-path-withheld"
      ],
      "strip_counts": {
        "binary-path-withheld": 1
      }
    },
    {
      "file": "laptop/RECEIPT.txt",
      "role": "The one-line RAM-RECEIPT the run printed when it finished: the triad, each arm's medians, the CPU package's watts where read (NOT WALL), the THROTTLED counts, the no-card verdict and the registered verdicts.",
      "media_type": "text/plain",
      "bytes": 682,
      "sha256": "40652a36a6373957afa5690d8000f22497e37cdae218ec55cc25717af1cd04ff",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "machine-name-to-page-name"
      ],
      "strip_counts": {
        "machine-name-to-page-name": 1
      }
    },
    {
      "file": "two-channel-desktop/summary.json",
      "role": "The bench's own summary of one machine's run, as its reader wrote it from the run's rows and telemetry: every scored run's figures (writing speed by the engine's count and by the client's clock, prompt-reading speed, the first word, the CPU package's energy while writing, reading the prompt and over the whole request where the counter could be read, NOT WALL, the hottest CPU sensor, the other work on the machine in cores, and the THROTTLED, BOX SHARED and cold-page labels), each arm's medians of three, the triad's best and worst, the idle package reading, the no-card legs and their verdict, and the bandwidth rule's k and verdict where it was registered (on the eight-channel desktop instead: the ceiling, each block's share of it and the two registered expectations).",
      "media_type": "application/json",
      "bytes": 9125,
      "sha256": "0832f0c7d0612e3ce8637c3e7a8f65d349a10e4568253a81350050c7c87df9fe",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "machine-name-to-page-name"
      ],
      "strip_counts": {
        "machine-name-to-page-name": 2
      }
    },
    {
      "file": "two-channel-desktop/triad.json",
      "role": "The STREAM triad's receipt as the bench wrote it: the program's own lines (threads, array size, working set, ten reps with the first discarded, the best and worst of nine in GB/s, the checksum), the load average before and after, and the run's start and end in Unix seconds (UTC).",
      "media_type": "application/json",
      "bytes": 655,
      "sha256": "4f48d798d88f3cc47c1a6b021e5d58f0f7f39b549a3032d8cf01b6e6993a106b",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "binary-path-withheld"
      ],
      "strip_counts": {
        "binary-path-withheld": 1
      }
    },
    {
      "file": "two-channel-desktop/RECEIPT.txt",
      "role": "The one-line RAM-RECEIPT the run printed when it finished: the triad, each arm's medians, the CPU package's watts where read (NOT WALL), the THROTTLED counts, the no-card verdict and the registered verdicts.",
      "media_type": "text/plain",
      "bytes": 449,
      "sha256": "33aca439f4dbb025d05b1cc3591566e7cbc03eb01f1893d46c75970ec5bd2ac2",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "machine-name-to-page-name"
      ],
      "strip_counts": {
        "machine-name-to-page-name": 2
      }
    },
    {
      "file": "eight-channel-desktop/summary.json",
      "role": "The bench's own summary of one machine's run, as its reader wrote it from the run's rows and telemetry: every scored run's figures (writing speed by the engine's count and by the client's clock, prompt-reading speed, the first word, the CPU package's energy while writing, reading the prompt and over the whole request where the counter could be read, NOT WALL, the hottest CPU sensor, the other work on the machine in cores, and the THROTTLED, BOX SHARED and cold-page labels), each arm's medians of three, the triad's best and worst, the idle package reading, the no-card legs and their verdict, and the bandwidth rule's k and verdict where it was registered (on the eight-channel desktop instead: the ceiling, each block's share of it and the two registered expectations).",
      "media_type": "application/json",
      "bytes": 9745,
      "sha256": "d1fe98c7e770cb6d5c96108ee28f12e052e5e1f8dc4b16aa6d5e63c5d3081364",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "machine-name-to-page-name"
      ],
      "strip_counts": {
        "machine-name-to-page-name": 2
      }
    },
    {
      "file": "eight-channel-desktop/triad.json",
      "role": "The STREAM triad's receipt as the bench wrote it: the program's own lines (threads, array size, working set, ten reps with the first discarded, the best and worst of nine in GB/s, the checksum), the load average before and after, and the run's start and end in Unix seconds (UTC).",
      "media_type": "application/json",
      "bytes": 660,
      "sha256": "6d42d6e718f12b508fd202ec2e739933d4011e84c276073550f896ba40658c21",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "binary-path-withheld"
      ],
      "strip_counts": {
        "binary-path-withheld": 1
      }
    },
    {
      "file": "eight-channel-desktop/RECEIPT.txt",
      "role": "The one-line RAM-RECEIPT the run printed when it finished: the triad, each arm's medians, the CPU package's watts where read (NOT WALL), the THROTTLED counts, the no-card verdict and the registered verdicts.",
      "media_type": "text/plain",
      "bytes": 684,
      "sha256": "813bfbf71e51aa4f75e90cb522e590949983d2edd9021f485781452432f5ceee",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "machine-name-to-page-name"
      ],
      "strip_counts": {
        "machine-name-to-page-name": 2
      }
    }
  ]
}
