Qwen3.5-9B · served locally on a single RTX 3060, 12GB VRAM
Qwen3.5-9B, three ways: our abliterated baseline, an independent reproducibility rerun of that same baseline, and our run of the official weights — scored and timed against each other, and against Qwen's own published numbers where one exists.
huihui-ai abliterated build, served serially through the desktop adapter → production Ollama, 2026‑08‑16–20.
Same abliteration, independently‑verified genuine GGUF, served via the 16‑way raw‑llama.cpp bypass, 2026‑08‑23 — 7 of 7 tasks done.
Unsloth official Qwen3.5‑9B weights, same harness/prompting, run 2026‑08‑22–23 (two tasks via the raw‑llama.cpp bypass).
Numbers from Qwen's own model card. Not run by us — quoted as-is.
One table per benchmark, all scores as percentages. Δ is the change versus the row above: abliterated¹→abliterated² on the rerun row, abliterated²→Qwen 3.5:9b on the ours row. The posted row isn't chained in — see the readout cards below for why that comparison needs its own caveats.
grade-school math word problems
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | 80.5strict 80.9 | — |
| Abliterated² (rerun) | 82.5strict 82.6 | ▲ 2.0 |
| Qwen 3.5:9b (ours) | 85.7 ± 1.0 | ▲ 3.2 |
| Qwen3.5‑9B (posted) | not reported1 | — |
Python function generation from docstrings
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | 37.8 ± 3.8 | — |
| Abliterated² (rerun) | 61.6 ± 3.8 | ▲ 23.8 |
| Qwen 3.5:9b (ours) | 47.6 ± 3.9 | ▼ 14.0 |
| Qwen3.5‑9B (posted) | not reported1 | — |
basic Python programming problems
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | 39.4 ± 2.2 | — |
| Abliterated² (rerun) | 48.2 ± 2.2 | ▲ 8.8 |
| Qwen 3.5:9b (ours) | 48.0 ± 2.2 | ▼ 0.2 |
| Qwen3.5‑9B (posted) | not reported1 | — |
diverse reasoning — logic, algorithms, language
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | 46.3 ± 0.5 | — |
| Abliterated² (rerun) | 45.6 ± 0.5 | ▼ 0.7 |
| Qwen 3.5:9b (ours) | 65.8 ± 0.5 | ▲ 20.2 |
| Qwen3.5‑9B (posted) | not reported1 | — |
broad academic knowledge, 57 subjects
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | 61.6 ± 0.4 | — |
| Abliterated² (rerun) | 62.0 ± 0.4 | ▲ 0.5 |
| Qwen 3.5:9b (ours) | 64.7 ± 0.4 | ▲ 2.7 |
| Qwen3.5‑9B (posted) | 82.52 | — |
instruction-following & formatting compliance
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | 66.1strict‑p 51.0 · strict‑i 63.8 · loose‑p 54.2 | — |
| Abliterated² (rerun) | 64.7strict‑p 48.8 · strict‑i 61.9 · loose‑p 52.7 | ▼ 1.4 |
| Qwen 3.5:9b (ours) | 58.8strict‑p 44.2–44.43 · strict‑i 57.4–57.7 · loose‑p 45.7 | ▼ 5.9 |
| Qwen3.5‑9B (posted) | 91.52 | — |
news article summarization, single ROUGE score
| Source | Score | Δ |
|---|---|---|
| Abliterated¹ | not reported4 | — |
| Abliterated² (rerun) | 7.9 | — |
| Qwen 3.5:9b (ours) | 10.0 | ▲ 2.2 |
| Qwen3.5‑9B (posted) | not reported1 | — |
digest-produce's actual job is summarization), added after the fact rather than run alongside the others.gsm8k, bbh_cot_zeroshot, mmlu_pro, cnn_dailymail favor Qwen 3.5:9b by 2.2–20.2 points. bbh_cot_zeroshot's +20.2 is the largest gap in the comparison.
humaneval_instruct, mbpp_instruct_fixed, ifeval all score lower for Qwen 3.5:9b than abliterated, by 0.2–14.0 points. Don't generalize "Qwen 3.5:9b always wins" from the other 4.
Qwen's posted numbers are almost certainly thinking‑mode (the model's default); ours are forced non‑thinking. Ours also run Q4_K_M quantized, not full precision. The gap to "posted" reflects both of those on top of any real capability difference.
Per‑item speed for each run, wall‑clock runtime alongside it for reference. Not a clean speed benchmark — see the callout below before reading these as apples‑to‑apples.
Bars are scaled per task (each task's own longest bar is 100% width) — runtimes span two orders of magnitude across tasks, so a single shared scale would flatten the short ones to nothing.
grade-school math word problems
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | 6.00s/it†raw 7.46s/it | 2h44m |
| Abliterated² (bypass) | 1.65s/itfrom 7.46s/it serial | 36m10s |
| Qwen 3.5:9b (ours) | 6.32s/itserial | 2h19m |
Python function generation from docstrings
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | 7.50s/it†raw 9.02s/it | 24m39s |
| Abliterated² (bypass) | 1.20s/itfrom 9.02s/it serial | 3m18s |
| Qwen 3.5:9b (ours) | 5.28s/itserial | 14m26s |
basic Python programming problems
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | 12.00s/it†raw 16.97s/it | 2h21m |
| Abliterated² (bypass) | 1.58s/itfrom 16.97s/it serial | 13m09s |
| Qwen 3.5:9b (ours) | 7.42s/itserial | 1h02m |
diverse reasoning — logic, algorithms, language
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | 21.82s/it‡ | 39h28m |
| Abliterated² (bypass) | 1.16s/itfrom 21.82s/it serial | 2h05m |
| Qwen 3.5:9b (ours) | 0.96s/it16‑way bypass | 1h44m |
broad academic knowledge, 57 subjects
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | 15.79s/it‡ | 52h48m |
| Abliterated² (bypass) | 1.77s/itfrom 15.79s/it serial | 5h54m |
| Qwen 3.5:9b (ours) | 1.15s/it16‑way bypass | 3h51m |
instruction-following & formatting compliance
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | 51.00s/it†raw 51.35s/it | 7h43m |
| Abliterated² (bypass) | 3.75s/itfrom 51.35s/it serial | 33m51s |
| Qwen 3.5:9b (ours) | 18.77s/itserial | 2h49m |
news article summarization, single ROUGE score
| Source | Speed | Runtime |
|---|---|---|
| Abliterated¹ (serial) | not run | — |
| Abliterated² (bypass) | 1.78s/itserial | 5h41m |
| Qwen 3.5:9b (ours) | 2.11s/itserial | 6h43m |
Where both abliterated¹ and abliterated² rows are filled in, the drop in per‑item rate is entirely the 16‑way bypass replacing serial production Ollama — same weights, same harness, same prompts. It is not evidence about the abliterated vs. official comparison itself.
† Outlier‑corrected median, gsm8k/humaneval_instruct/mbpp_instruct_fixed/ifeval only: reconstructed from the desktop adapter's per‑request log for each task's exact time window, then IQR‑filtered to strip contention spikes (9.8–17.5% of that task's wall‑clock, depending on task) before taking the median of what's left. This is the cleaner read on per‑item cost with routine scheduled‑job contention removed.
‡ bbh_cot_zeroshot and mmlu_pro's abliterated¹ rates could not get the same treatment. Reconstructing their windows the same way (each result file's own reported duration, worked backward from its finish time) shows the two runs started within two minutes of each other on 2026‑08‑17 and ran concurrently on claw‑01 for nearly their entire span — a genuine self‑contention bug between two of our own jobs, not just digest, predating the concurrency locks added 2026‑08‑22 to prevent exactly this. No per‑task log survived from that original run and the adapter log doesn't tag requests by task, so their rates can't be cleanly separated after the fact. Treat both raw numbers as inflated by more than ordinary contention.