Complete benchmark comparison across all 6 evaluated resident models at C=4 parallel slots
| Model Identifier | Architecture | Loaded Ctx | C=4 Ser Wall | C=4 Conc Wall | C=2 Speedup | C=4 Speedup | C=4 Agg Tok/s | C=4 TP Gain | Opinions P=4 Speedup |
|---|---|---|---|---|---|---|---|---|---|
|
Verdict 4 35B Toolterse v5 (MLX)
verdict-4-35b-toolterse-v5-mlx
|
MLX (MoE 35B-A3B) | 262,144 | 3.45s | 1.85s | 1.46× | 1.87× | 127.4 tok/s | +86.5% | 1.50× |
|
Gemma 4 26B A4B IT (MLX)
mlx-community/gemma-4-26b-a4b-it
|
MLX (Gemma 4 26B-A4B) | 262,144 | 2.17s | 2.08s | 2.03× | 1.04× | 84.5 tok/s | +4.3% | 1.03× |
|
Google Gemma 4 E4B (MLX)
google/gemma-4-e4b
|
MLX (Gemma 4 E4B) | 131,072 | 4.52s | 2.58s | 1.71× | 1.75× | 91.5 tok/s | +75.3% | 1.68× |
|
Verdict 4 30B Terse (MLX)
verdict-4-30b-terse-mlx
|
MLX (MoE 30B-A3B) | 262,144 | 3.10s | 1.38s | 0.89× | 2.25× | 127.7 tok/s | +124.7% | 1.82× |
|
Qwen 3 Coder 30B (MLX)
qwen/qwen3-coder-30b
|
MLX (MoE 30B-A3B) | 262,144 | 3.69s | 2.70s | 1.46× | 1.37× | 72.5 tok/s | +36.6% | 1.91× |
|
Verdict 4 4B Quill (MLX)
verdict-4-4b-quill-mlx
|
MLX (Dense 4B) | 262,144 | 1.97s | 1.24s | 1.53× | 1.59× | 158.2 tok/s | +58.8% | 1.87× |
Comparing Serialized single-slot tok/s against Model-Aware parallel slot tok/s
Resident models, parameter allocation, context budget per slot, and Unified RAM footprint
| Model | Classification | Total / Active Params | Loaded Context | Slot Headroom (4 Slots) | RAM Residency | Engine / Platform |
|---|---|---|---|---|---|---|
| verdict-4-35b-toolterse-v5-mlx | Sparse MoE | 35B / ~3.0B active | 262,144 tokens | 65,536 tok / slot | ~22.4 GB | Apple Silicon Metal (MLX) |
| mlx-community/gemma-4-26b-a4b-it | Sparse MoE | 26B / ~4.0B active | 262,144 tokens | 65,536 tok / slot | ~16.8 GB | Apple Silicon Metal (MLX) |
| google/gemma-4-e4b | Dense | 4B / 4.0B active | 131,072 tokens | 32,768 tok / slot | ~3.8 GB | Apple Silicon Metal (MLX) |
| verdict-4-30b-terse-mlx | Sparse MoE | 30B / ~3.0B active | 262,144 tokens | 65,536 tok / slot | ~19.2 GB | Apple Silicon Metal (MLX) |
| qwen/qwen3-coder-30b | Sparse MoE | 30B / ~3.0B active | 262,144 tokens | 65,536 tok / slot | ~19.5 GB | Apple Silicon Metal (MLX) |
| verdict-4-4b-quill-mlx | Dense | 4B / 4.0B active | 262,144 tokens | 65,536 tok / slot | ~3.6 GB | Apple Silicon Metal (MLX) |
Key engineering takeaways from live multi-slot execution on Apple Silicon
When multiple sequences decode simultaneously, memory bus bandwidth is shared across active threads. While per-token latency sees slight dilation, aggregate throughput increases by 1.4× to 1.9× because Metal batches matrix-vector operations across unified memory.
Sparse Mixture-of-Experts architectures (such as 35B Toolterse and 30B Terse) deliver extraordinary scaling (exceeding 127 tok/s aggregate) because concurrent tokens activate distinct expert subsets, amortizing parameter loading across slots.
With mode='model_aware', multi-angle reasoning loops (such as Opinions, Speculative Repair, and Multi-Perspective Review) no longer serialize behind provider-level mutexes. This reduces total user wait time from an \(O(N)\) accumulation to an \(O(1)\) parallel burst.
The benchmark suite validates that ENGINE_SLOT_MODE=model_aware is fully stable across all evaluated model families (Verdict Quill/Terse/Toolterse, Gemma 4, and Qwen 3 Coder) with zero HTTP or Metal kernel failures.
Identifier: verdict-4-35b-toolterse-v5-mlx · Engine: MLX (Apple Silicon Metal)
Head-to-head comparison of Serialized execution (OFF) vs Model-Aware parallel slot execution (ON)
| Load | Mode | Wall Time | Slots | Mean Latency | Mean Queue Wait | Throughput | Speedup | TP Gain | Errors |
|---|---|---|---|---|---|---|---|---|---|
| C=1 | OFF (serialize) | 0.852 s | 1 | 0.851 s | 0.000 s | 69.3 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.893 s | 1 | 0.893 s | 0.01 ms | 66.1 tok/s | 0.95× | +-4.6% | 0 | |
| C=2 | OFF (serialize) | 1.774 s | 1 | 0.886 s | 0.458 s | 66.5 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.218 s | 2 | 1.195 s | 0.01 ms | 96.9 tok/s | 1.46× | +45.6% | 0 | |
| C=3 | OFF (serialize) | 2.581 s | 1 | 0.860 s | 0.868 s | 68.6 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.787 s | 3 | 1.564 s | 0.01 ms | 99.0 tok/s | 1.44× | +44.4% | 0 | |
| C=4 | OFF (serialize) | 3.455 s | 1 | 0.864 s | 1.306 s | 68.3 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.852 s | 4 | 1.804 s | 0.00 ms | 127.4 tok/s | 1.87× | +86.5% | 0 |
Parallel candidate reviews (Security, Performance, Maintainability, Reliability) generated simultaneously
| Perspectives | Assigned Evaluation Angles | Serialized Wall | Concurrent Wall | Speedup | Peak Slots | Candidate Statuses |
|---|---|---|---|---|---|---|
| P=2 |
Security, Performance
|
1.227 s | 1.402 s | 0.88× | 2 | [200, 200] (0 errors) |
| P=3 |
Security, Performance, Maintainability
|
1.780 s | 1.129 s | 1.58× | 3 | [200, 200, 200] (0 errors) |
| P=4 |
Security, Performance, Maintainability, Reliability
|
2.556 s | 1.699 s | 1.50× | 4 | [200, 200, 200, 200] (0 errors) |
Slot gate allocation and Metal unified memory residency
Parameter sizing and physical unified memory requirements
Multi-slot allocation configured under ENGINE_SLOT_MODE=model_aware
Identifier: mlx-community/gemma-4-26b-a4b-it · Engine: MLX (Apple Silicon Metal)
Head-to-head comparison of Serialized execution (OFF) vs Model-Aware parallel slot execution (ON)
| Load | Mode | Wall Time | Slots | Mean Latency | Mean Queue Wait | Throughput | Speedup | TP Gain | Errors |
|---|---|---|---|---|---|---|---|---|---|
| C=1 | OFF (serialize) | 0.667 s | 1 | 0.667 s | 0.000 s | 88.5 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.848 s | 1 | 0.847 s | 0.01 ms | 69.6 tok/s | 0.79× | +-21.3% | 0 | |
| C=2 | OFF (serialize) | 2.203 s | 1 | 1.098 s | 0.682 s | 53.6 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.083 s | 2 | 0.984 s | 0.01 ms | 95.1 tok/s | 2.03× | +77.5% | 0 | |
| C=3 | OFF (serialize) | 2.616 s | 1 | 0.872 s | 0.739 s | 67.7 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.555 s | 3 | 1.521 s | 0.02 ms | 84.9 tok/s | 1.68× | +25.4% | 0 | |
| C=4 | OFF (serialize) | 2.173 s | 1 | 0.543 s | 0.748 s | 81.0 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 2.084 s | 4 | 2.031 s | 0.01 ms | 84.5 tok/s | 1.04× | +4.3% | 0 |
Parallel candidate reviews (Security, Performance, Maintainability, Reliability) generated simultaneously
| Perspectives | Assigned Evaluation Angles | Serialized Wall | Concurrent Wall | Speedup | Peak Slots | Candidate Statuses |
|---|---|---|---|---|---|---|
| P=2 |
Security, Performance
|
1.043 s | 1.151 s | 0.91× | 2 | [200, 200] (0 errors) |
| P=3 |
Security, Performance, Maintainability
|
1.626 s | 1.711 s | 0.95× | 3 | [200, 200, 200] (0 errors) |
| P=4 |
Security, Performance, Maintainability, Reliability
|
2.498 s | 2.424 s | 1.03× | 4 | [200, 200, 200, 200] (0 errors) |
Slot gate allocation and Metal unified memory residency
Parameter sizing and physical unified memory requirements
Multi-slot allocation configured under ENGINE_SLOT_MODE=model_aware
Identifier: google/gemma-4-e4b · Engine: MLX (Apple Silicon Metal)
Head-to-head comparison of Serialized execution (OFF) vs Model-Aware parallel slot execution (ON)
| Load | Mode | Wall Time | Slots | Mean Latency | Mean Queue Wait | Throughput | Speedup | TP Gain | Errors |
|---|---|---|---|---|---|---|---|---|---|
| C=1 | OFF (serialize) | 0.789 s | 1 | 0.789 s | 0.000 s | 74.7 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.774 s | 1 | 0.774 s | 0.08 ms | 76.2 tok/s | 1.02× | +2.0% | 0 | |
| C=2 | OFF (serialize) | 1.541 s | 1 | 0.770 s | 0.397 s | 76.6 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.900 s | 2 | 0.882 s | 0.01 ms | 131.1 tok/s | 1.71× | +71.1% | 0 | |
| C=3 | OFF (serialize) | 3.994 s | 1 | 1.331 s | 1.245 s | 44.3 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.428 s | 3 | 1.387 s | 0.11 ms | 123.9 tok/s | 2.80× | +179.6% | 0 | |
| C=4 | OFF (serialize) | 4.520 s | 1 | 1.130 s | 1.527 s | 52.2 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 2.579 s | 4 | 2.495 s | 0.01 ms | 91.5 tok/s | 1.75× | +75.3% | 0 |
Parallel candidate reviews (Security, Performance, Maintainability, Reliability) generated simultaneously
| Perspectives | Assigned Evaluation Angles | Serialized Wall | Concurrent Wall | Speedup | Peak Slots | Candidate Statuses |
|---|---|---|---|---|---|---|
| P=2 |
Security, Performance
|
1.056 s | 1.813 s | 0.58× | 2 | [200, 200] (0 errors) |
| P=3 |
Security, Performance, Maintainability
|
2.441 s | 1.433 s | 1.70× | 3 | [200, 200, 200] (0 errors) |
| P=4 |
Security, Performance, Maintainability, Reliability
|
2.816 s | 1.671 s | 1.68× | 4 | [200, 200, 200, 200] (0 errors) |
Slot gate allocation and Metal unified memory residency
Parameter sizing and physical unified memory requirements
Multi-slot allocation configured under ENGINE_SLOT_MODE=model_aware
Identifier: verdict-4-30b-terse-mlx · Engine: MLX (Apple Silicon Metal)
Head-to-head comparison of Serialized execution (OFF) vs Model-Aware parallel slot execution (ON)
| Load | Mode | Wall Time | Slots | Mean Latency | Mean Queue Wait | Throughput | Speedup | TP Gain | Errors |
|---|---|---|---|---|---|---|---|---|---|
| C=1 | OFF (serialize) | 0.555 s | 1 | 0.555 s | 0.000 s | 79.3 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.515 s | 1 | 0.515 s | 0.12 ms | 85.4 tok/s | 1.08× | +7.7% | 0 | |
| C=2 | OFF (serialize) | 1.041 s | 1 | 0.520 s | 0.264 s | 84.6 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.165 s | 2 | 0.889 s | 0.00 ms | 75.5 tok/s | 0.89× | +-10.7% | 0 | |
| C=3 | OFF (serialize) | 2.328 s | 1 | 0.776 s | 0.771 s | 56.7 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.460 s | 3 | 1.253 s | 0.01 ms | 90.4 tok/s | 1.59× | +59.5% | 0 | |
| C=4 | OFF (serialize) | 3.096 s | 1 | 0.774 s | 1.082 s | 56.8 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.378 s | 4 | 1.345 s | 0.01 ms | 127.7 tok/s | 2.25× | +124.7% | 0 |
Parallel candidate reviews (Security, Performance, Maintainability, Reliability) generated simultaneously
| Perspectives | Assigned Evaluation Angles | Serialized Wall | Concurrent Wall | Speedup | Peak Slots | Candidate Statuses |
|---|---|---|---|---|---|---|
| P=2 |
Security, Performance
|
1.182 s | 0.749 s | 1.58× | 2 | [200, 200] (0 errors) |
| P=3 |
Security, Performance, Maintainability
|
1.460 s | 1.259 s | 1.16× | 3 | [200, 200, 200] (0 errors) |
| P=4 |
Security, Performance, Maintainability, Reliability
|
2.601 s | 1.429 s | 1.82× | 4 | [200, 200, 200, 200] (0 errors) |
Slot gate allocation and Metal unified memory residency
Parameter sizing and physical unified memory requirements
Multi-slot allocation configured under ENGINE_SLOT_MODE=model_aware
Identifier: qwen/qwen3-coder-30b · Engine: MLX (Apple Silicon Metal)
Head-to-head comparison of Serialized execution (OFF) vs Model-Aware parallel slot execution (ON)
| Load | Mode | Wall Time | Slots | Mean Latency | Mean Queue Wait | Throughput | Speedup | TP Gain | Errors |
|---|---|---|---|---|---|---|---|---|---|
| C=1 | OFF (serialize) | 0.652 s | 1 | 0.652 s | 0.000 s | 75.1 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.581 s | 1 | 0.581 s | 0.01 ms | 84.4 tok/s | 1.12× | +12.3% | 0 | |
| C=2 | OFF (serialize) | 2.312 s | 1 | 1.156 s | 0.335 s | 42.4 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.586 s | 2 | 1.280 s | 0.01 ms | 61.8 tok/s | 1.46× | +45.8% | 0 | |
| C=3 | OFF (serialize) | 2.539 s | 1 | 0.846 s | 0.747 s | 57.9 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.767 s | 3 | 1.308 s | 0.01 ms | 83.2 tok/s | 1.44× | +43.7% | 0 | |
| C=4 | OFF (serialize) | 3.693 s | 1 | 0.923 s | 1.344 s | 53.1 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 2.705 s | 4 | 2.166 s | 0.01 ms | 72.5 tok/s | 1.37× | +36.6% | 0 |
Parallel candidate reviews (Security, Performance, Maintainability, Reliability) generated simultaneously
| Perspectives | Assigned Evaluation Angles | Serialized Wall | Concurrent Wall | Speedup | Peak Slots | Candidate Statuses |
|---|---|---|---|---|---|---|
| P=2 |
Security, Performance
|
1.123 s | 0.744 s | 1.51× | 2 | [200, 200] (0 errors) |
| P=3 |
Security, Performance, Maintainability
|
1.854 s | 1.016 s | 1.82× | 3 | [200, 200, 200] (0 errors) |
| P=4 |
Security, Performance, Maintainability, Reliability
|
2.636 s | 1.383 s | 1.91× | 4 | [200, 200, 200, 200] (0 errors) |
Slot gate allocation and Metal unified memory residency
Parameter sizing and physical unified memory requirements
Multi-slot allocation configured under ENGINE_SLOT_MODE=model_aware
Identifier: verdict-4-4b-quill-mlx · Engine: MLX (Apple Silicon Metal)
Head-to-head comparison of Serialized execution (OFF) vs Model-Aware parallel slot execution (ON)
| Load | Mode | Wall Time | Slots | Mean Latency | Mean Queue Wait | Throughput | Speedup | TP Gain | Errors |
|---|---|---|---|---|---|---|---|---|---|
| C=1 | OFF (serialize) | 0.441 s | 1 | 0.441 s | 0.000 s | 111.2 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.405 s | 1 | 0.405 s | 0.01 ms | 120.9 tok/s | 1.09× | +8.7% | 0 | |
| C=2 | OFF (serialize) | 0.801 s | 1 | 0.400 s | 0.206 s | 122.3 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 0.525 s | 2 | 0.520 s | 0.01 ms | 186.7 tok/s | 1.53× | +52.6% | 0 | |
| C=3 | OFF (serialize) | 1.273 s | 1 | 0.424 s | 0.422 s | 115.4 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.621 s | 3 | 1.606 s | 0.02 ms | 90.7 tok/s | 0.79× | +-21.4% | 0 | |
| C=4 | OFF (serialize) | 1.967 s | 1 | 0.492 s | 0.696 s | 99.6 tok/s | 1.00× | 1.00× | 0 |
| ON (model_aware) | 1.239 s | 4 | 1.212 s | 0.01 ms | 158.2 tok/s | 1.59× | +58.8% | 0 |
Parallel candidate reviews (Security, Performance, Maintainability, Reliability) generated simultaneously
| Perspectives | Assigned Evaluation Angles | Serialized Wall | Concurrent Wall | Speedup | Peak Slots | Candidate Statuses |
|---|---|---|---|---|---|---|
| P=2 |
Security, Performance
|
0.674 s | 0.507 s | 1.33× | 2 | [200, 200] (0 errors) |
| P=3 |
Security, Performance, Maintainability
|
1.077 s | 0.733 s | 1.47× | 3 | [200, 200, 200] (0 errors) |
| P=4 |
Security, Performance, Maintainability, Reliability
|
2.235 s | 1.194 s | 1.87× | 4 | [200, 200, 200, 200] (0 errors) |
Slot gate allocation and Metal unified memory residency
Parameter sizing and physical unified memory requirements
Multi-slot allocation configured under ENGINE_SLOT_MODE=model_aware