#!/usr/bin/env bash
#
# Reproduce the GREZA field measurement of Qwen3.8-27B,
# taken on 2026-09-09 under protocol bench-runner/1.
#
# Every command below is the command that was actually run, exported from
# the measurement data. Paths are kept as they were on the rented rigs;
# change WORKSPACE if you run this elsewhere.

set -euo pipefail

WORKSPACE="${WORKSPACE:-/workspace}"
LLAMA_COMMIT="df750f76b"   # build b10871
MODEL_REPO="ggml-org/Qwen3.8-27B-GGUF"
MODEL_FILE=""

# Cards and what each of them reported:
#   NVIDIA GeForce RTX 3060 — quant not reported, llama.cpp df750f76b, $0.221/hr
#   NVIDIA GeForce RTX 3090 — quant not reported, llama.cpp df750f76b, $0.172/hr
#   NVIDIA GeForce RTX 4070 Ti SUPER — quant not reported, llama.cpp df750f76b, $0.131/hr
#   NVIDIA GeForce RTX 4090 — quant not reported, llama.cpp df750f76b, $0.390/hr
#   NVIDIA GeForce RTX 5090 — quant not reported, llama.cpp df750f76b, $0.074/hr

# ---------------------------------------------------------------------------
# 1. Build llama.cpp at the exact commit the numbers came from.
#
#    CMAKE_CUDA_ARCHITECTURES must match the card: 86 for RTX 3060 and 3090,
#    89 for RTX 4070 Ti SUPER and 4090, 120 for RTX 5090.
# ---------------------------------------------------------------------------

git clone https://github.com/ggml-org/llama.cpp "$WORKSPACE/llama.cpp"
git -C "$WORKSPACE/llama.cpp" checkout "$LLAMA_COMMIT"
cmake -S "$WORKSPACE/llama.cpp" -B "$WORKSPACE/llama.cpp/build" \
  -DGGML_CUDA=ON \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_CUDA_ARCHITECTURES="${CUDA_ARCH:-86}"
cmake --build "$WORKSPACE/llama.cpp/build" --config Release -j

# ---------------------------------------------------------------------------
# 2. Fetch the weights at the pinned revision.
# ---------------------------------------------------------------------------

huggingface-cli download "$MODEL_REPO" "$MODEL_FILE" \
  --revision 0669b98607d47046c7c2b3f801011d54a08cfccf \
  --local-dir "$WORKSPACE/models"

# The quality axis compares every quant against the BF16 baseline on a
# fixed text: datasets/ggml-org/ci at revision 927b3642933080f1b0e811e2f916e14c292992f9,
# member wikitext-2-raw/wiki.test.raw,
# sha256 173c87a53759e0201f33e0ccf978e510c2042d7f2cb78229d9a50d79b9e7dd08.

# ---------------------------------------------------------------------------
# 3. Build the quants. sha256 of every result is in checksums.txt.
# ---------------------------------------------------------------------------

# Source: Qwen3.8-27B-BF16.gguf
# sha256: 5a3eedc837bcbd1365cdbf5b71e698df3122e76586ba872f07ce3ed4a9bfa97e

# Qwen3.8-27B-Q8_0.gguf — 26.63 GiB, sha256 f5c702d8820d36fb55985bb238fc83ee3a313e920f4b752a437c3a6a9e14e4c8
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q8_0.gguf Q8_0

# Qwen3.8-27B-Q6_K.gguf — 20.57 GiB, sha256 b40c8bc7e60c0481acb9e832b2515960cd268276745485e12ec88c816cbce4e6
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q6_K.gguf Q6_K

# Qwen3.8-27B-Q5_K_M.gguf — 17.91 GiB, sha256 7737ab5692fc265a8b6b83b7635139d2cc8706673d0cf414f43141aec5b20842
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q5_K_M.gguf Q5_K_M

# Qwen3.8-27B-Q4_K_M.gguf — 15.41 GiB, sha256 078fc466c6de18416f3515a108fd58a8c33fbe2215e730db661a2fe2fcd9c5f0
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf Q4_K_M

# Qwen3.8-27B-Q4_0.gguf — 14.41 GiB, sha256 f7c1c020d7ecc58e7cc5d5f9a3f1948d38658c73ac89cd751d2f1fe6570f1e33
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q4_0.gguf Q4_0

# Qwen3.8-27B-Q3_K_M.gguf — 12.39 GiB, sha256 aa4d1df596360a425c9b5b9356ee8f43909376d831359916dea5e8cc5f18679a
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q3_K_M.gguf Q3_K_M

# Qwen3.8-27B-IQ4_XS.gguf — 14.15 GiB, sha256 e6e9b2c202a1673a4243452bb65c5c3c84b210ba57e582109fdea786aa69cb5a
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf IQ4_XS

# Qwen3.8-27B-Q2_K.gguf — 9.98 GiB, sha256 ce220599529e4740552ed764999569c641476fde80233cd568ffdfd710c37dad
/workspace/llama.cpp/build/bin/llama-quantize /workspace/models/Qwen3.8-27B-BF16.gguf /workspace/quants/Qwen3.8-27B-Q2_K.gguf Q2_K

# ---------------------------------------------------------------------------
# 4. Run the measurement. One block per series, commands verbatim.
# ---------------------------------------------------------------------------

# --- NVIDIA GeForce RTX 3060 — ladder ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -o json -oe md -v

# --- NVIDIA GeForce RTX 3060 — Layers on the GPU ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 64 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 56 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 48 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 32 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 24 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 16 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 8 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 0 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 3060 — Single point ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 0 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 3060 — Micro-batch ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 256 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 128 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 64 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 3060 — KV cache type ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 256 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 256 -ctk q8_0 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 256 -ctk q4_0 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 3060 — KV cache type ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk f16 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q8_0 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q4_0 -ctv f16 -ngl 40 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 3060 — Layers on the GPU ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q4_0 -ctv q4_0 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q4_0 -ctv q4_0 -ngl 36 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q4_0 -ctv q4_0 -ngl 32 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q4_0 -ctv q4_0 -ngl 28 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 3090 — ladder ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 98304 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — ladder ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Micro-batch ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 256 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 128 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 64 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Layers on the GPU ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 62 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 60 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 56 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Prefill depth ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 0 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — KV cache type ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 512 -ctk q8_0 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 512 -ctk q4_0 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 512 -ctk f16 -ctv q8_0 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Single point ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -b 2048 -ub 256 -ctk q8_0 -ctv q8_0 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Flash attention ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa on -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa off -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Threads ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 62 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 1 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 62 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 2 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 62 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 4 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 62 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 16 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl 62 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 4070 Ti SUPER — Tensor overrides ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -ot blk\.(3|7|11|15|19|23|27|31|35|39|43|47|51|55|59|63)\..*=CPU -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -ot \.ffn_down\.=CPU -o json -oe md -v

# --- NVIDIA GeForce RTX 4090 — ladder ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 98304 -o json -oe md -v

# --- NVIDIA GeForce RTX 5090 — ladder ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 8192 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 32768 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 98304 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -o json -oe md -v

# --- NVIDIA GeForce RTX 5090 — Micro-batch ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 256 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 128 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- NVIDIA GeForce RTX 5090 — KV cache type ---
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 512 -ctk f16 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 512 -ctk q8_0 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 512 -ctk q4_0 -ctv f16 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v
/workspace/llama.cpp/build/bin/llama-bench -m /workspace/models/Qwen3.8-27B-Q4_K_M.gguf -p 512 -n 128 -r 3 -t 8 -d 262144 -b 2048 -ub 512 -ctk f16 -ctv q8_0 -ngl -1 -ncmoe 0 -fa auto -nkvo 0 -nopo 0 --no-host 0 -o json -oe md -v

# --- Quality axis ---
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/models/Qwen3.8-27B-BF16.gguf -f /workspace/text/wikitext-2-raw/wiki.test.raw --kl-divergence-base /workspace/ref.kld -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto -ngl 20
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-IQ4_XS.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q2_K.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q3_K_M.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q4_0.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q4_K_M.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q5_K_M.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q6_K.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
/workspace/llama.cpp/build/bin/llama-perplexity -m /workspace/quants/Qwen3.8-27B-Q8_0.gguf --kl-divergence-base /workspace/ref.kld --kl-divergence -c 512 --chunks 200 -ctk f16 -ctv f16 -fa auto
