/hub/methods

How to read The Hub

A throughput number is only useful when the artifact, runtime, prompt, settings, thermals, and failure checks stay attached to it. These are the rules I use here.

The test group is the comparison boundary

Rows inside one group share enough controls to answer the stated question. Rows from different groups remain searchable, but they do not become comparable just because both use tokens per second.

A matched server request is not the same thing as llama-bench pp128/tg96. An RKLLM W8A8 NPU result is not the other half of a Q4 llama.cpp CPU test.

Generation and prompt processing are different phases

Prompt processing measures how quickly the runtime ingests the input. Generation measures token-by-token output after that input is processed. Vulkan moved prompt processing much more than generation on the two clean X1S models, so the Hub keeps both fields when the source recorded them.

Artifacts and runtime versions stay visible

A model name is not enough. The record should carry the exact GGUF or conversion, quantization, pinned revision or hash when available, runtime version, backend, and mode. Mutable tags are marked instead of treated like content-addressed artifacts.

Thermal limits are part of the result

The normal X1S thermal abort was 85 °C. Three incomplete CPU settings were repeated under an approved 90 °C ceiling, and those rows say so. Kernel-error checks, request timeouts, and GPU recovery stayed enabled.

A failed run stays in the dataset

An i915 hang, reset timeout, tensor-size overflow, or device loss can define the useful boundary better than a fast clean row. Failed runs do not receive made-up throughput values, and a zero process return code does not erase a kernel failure.

Outside references remain outside references

The Raspberry Pi 5 values quoted in the Nova article came from published references. Approximate ranges stay ranges. They are not Trevor measurements, and the Hub does not convert them into exact midpoint values for sorting.

The article and the record do different jobs

The article explains why I ran the test, what happened, and what the results mean. A Hub run page carries the structured setup, rows, limits, outcomes, and supporting files. One does not replace the other.

What is still open

There is no matched X1S versus N100, N150, Raspberry Pi 5, or Indiedroid Nova result yet. A six-model conventional Vulkan layer-split matrix also stopped after the larger full-offload failures. Those are open tests, not missing rows I can fill with somebody else’s setup.

© 2026 Trevor Unland. All rights reserved.

RSS Feed

$ echo "Built with React + TypeScript"