# 嚴格 RAM 上限實測:Ling-3.0-tiny Q4_K_M / EPQ expert paging ## 條件 - Intel Xeon Platinum 8559C,192 host threads;CPU-only。 - 上層 cgroup:`memory.max=104000000000`、`memory.swap.max=2936848384`。 - ctx=256、ubatch=32、threads=4、temperature=0、生成 32 tokens;每級兩輪。 - 每輪前以 `posix_fadvise(DONTNEED)` 驅逐模型檔 page cache。 - `prlimit --data=` 設定匿名記憶體硬上限;build 關閉 `GGML_CPU_REPACK` 和 AMX。 - anon 峰值由 `/proc//smaps_rollup` 的 `AnonHWM` 量測;RSS 也包含不受 RLIMIT_DATA 管制的 file-backed mappings。 ## 結果 | RAM 上限 | 結果 | arena (GiB) | slots | anon 峰值 (MB) | 餘量 (MB) | RSS 峰值 (MB) | decode tok/s | SSD MiB/tok | hot % | swap | |---:|:---:|---:|---:|---:|---:|---:|---:|---:|---:|---:| | 1 GiB | PASS | 0.30 | 225 | 421 | 603 | 905 | 8.23 / 8.27 | 199.7 / 199.8 | 16.76 / 16.73 | 0 | | 2 GiB | PASS | 1.30 | 979 | 1,412 | 636 | 1,895 | 12.01 / 11.75 | 73.8 / 73.8 | 49.47 / 49.48 | 0 | | 4 GiB | PASS | 3.30 | 2,486 | 3,404 | 692 | 3,888 | 15.83 / 16.92 | 24.8 / 24.8 | 66.74 / 66.74 | 0 | | 8 GiB | PASS | 7.01 | 5,279 | 7,064 | 1,128 | 7,548 | 17.72 / 19.57 | 7.1 / 7.1 | 76.28 / 76.28 | 0 | | 16 GiB | PASS | 14.62 | 11,012 / 11,013 | 14,600 | 1,784 | 15,084 | 19.23 / 19.25 | 7.2 / 7.1 | 76.26 / 76.28 | 0 | 各雙值欄依序為 repeat 1 / repeat 2。anon 峰值是本次 RLIMIT_DATA 驗證欄位;file-backed RSS 另外計入總 RSS。8 GiB 與 16 GiB 的 hot rate 和 SSD MiB/token 幾乎相同,在本次 workload 下增加至 16 GiB 沒帶來可見的 paging 收益。吞吐受共享主機負載影響。 原始逐輪數據:[`strict_memory_levels.json`](strict_memory_levels.json)。benchmark 命令與參數記錄於 JSON config;完整可重跑腳本為 [`../sdq-ling/strict_bench.py`](../sdq-ling/strict_bench.py)。