b70-optimization-lab

GLM-4.7-Flash UD-Q4_K_XL Rapid Snapshot

Audience: benchmark readers and future optimizers who need a strict one-B70 llama.cpp baseline for GLM-4.7-Flash on Intel Arc Pro B70.

Status

Headline Strict Row

Use the conservative standalone confirmation, not the faster four-GPU screen rows.

Quick Screen

All rows below used the same strict rapid realistic suite, one cold response per prompt, server prompt cache disabled, per-request cache_prompt=false, and cached_tokens=0 on every request. Four-way screen rows ran concurrently on GPUs 0-3 and are support/diagnostic only unless independently confirmed.

Label Median tok/s 1-100 after TTFT Result
poll100-confirm-ctx4096 40.7691297367011 promoted conservative standalone
poll100-confirm-gpu1-ctx4096 40.69448541933854 standalone support
poll0-confirm-ctx4096 40.26920254834211 standalone no win
poll100-freq2800-ctx4096 40.28100299317759 no win; temporary GPU0 2800/2800 MHz lock, then restored
secondscreen-poll0-ctx4096 44.12772006015564 four-GPU-active support only; not headline
poll100-ctx4096 43.961846688326546 four-GPU-active support only; not headline
default-ctx4096 43.889325874008236 four-GPU-active support only; not headline
secondscreen-ctx1024 43.577157910785374 four-GPU-active support only
secondscreen-ub128-ctx4096 43.01738632760778 four-GPU-active support only
secondscreen-ub1024-ctx4096 42.96398053825505 four-GPU-active support only
ub512-ctx4096 42.78754997492771 first screen no win
ctx2048 42.45966898905738 first screen no win

Conclusion: the fast ~44 tok/s rows appear only in four-GPU-active screens. Standalone confirmations on GPU0 and GPU1 repeatedly landed around 40.7 tok/s, so the promoted row uses the conservative standalone result. A temporary GPU0 core-frequency lock (2800,2800) held under load and reported Not Throttled, but did not improve throughput, so it was restored to the default 400,2800.

Reproduce

cd /home/steve/llm-optimizations

MODEL=/mnt/usb-models/llm-models/glm-4.7-flash-gguf/GLM-4.7-Flash-UD-Q4_K_XL.gguf \
MODEL_ALIAS=glm-4.7-flash-udq4-rapid \
LABEL=glm-4.7-flash-udq4-llamacpp-faon-cacheoff-poll100-confirm-ctx4096-realistic128 \
GPU_INDEX=0 PORT=19674 \
CTX_SIZE=4096 BATCH_SIZE=1024 UBATCH_SIZE=256 POLL=100 \
FLASH_ATTN=on CACHE_TYPE_K=f16 CACHE_TYPE_V=f16 \
MAX_TOKENS=128 METRIC_TOKENS=100 \
scripts/run-rapid-llamacpp-realistic-candidate.sh

The runner defaults to server prompt cache disabled (--cache-ram 0) and per-request prompt cache disabled ({"cache_prompt":false}). Do not remove either for headline claims.

Validity

This row uses the shared rapid realistic suite:

The benchmark uses streamed text/reasoning deltas for token timing because llama.cpp does not provide vLLM-style streamed token IDs here. The promoted row emitted enough streamed deltas for the 100-token metric window.

Notes For Future Work