Overview
This article documents a hands-on benchmark of the NVIDIA RTX PRO 2000 Blackwell 16 GB — the official GPU option of the ZimaCube Creator — running local LLM inference on ZimaOS 1.7.1. It covers synthetic benchmarks, real conversation generation, long-context validation, and power draw, and ends with the recommended model and deployment setup.
For the five-step deployment walkthrough, see Local LLM Inference. For the physical installation, see GPU Expansion.
TL;DR
| Finding | Result |
|---|---|
| Can it run local LLMs | Yes — CUDA 13.0 / Compute Capability 12.0 fully supported |
| Best model | Qwen3.6-35B-A3B (IQ3_XXS quantization) |
| Decode speed | About 65–70 tokens per second |
| Long context | 64K stable, 128K workable |
| vs. a 27B dense model | Only 18–23 t/s — the MoE model is about 3.5x faster |
| The real bottleneck | 16 GB of VRAM, not compute or power |
In one sentence: the RTX PRO 2000 is one of the best 16 GB cards for local agent inference — 70 W, Blackwell architecture, and with a MoE model it decodes several times faster than a dense model of a similar footprint.
Test Environment
Hardware
| Component | Specification |
|---|---|
| Device | ZimaCube NAS (first-generation entry model, official ZimaOS hardware) |
| OS | ZimaOS 1.7.1 |
| CPU | Intel N100 (4 cores, 0.7–3.4 GHz) |
| Memory | 16 GB (about 15 GB usable) + 5.2 GB swap |
| GPU | NVIDIA RTX PRO 2000 Blackwell |
| VRAM | 16 GB GDDR7 |
| CUDA | 13.0, driver 580.105.08 — auto-activated by ZimaOS 1.7.1 on card insertion |
| Compute capability | 12.0 (sm_120, Blackwell) |
| Power limit | 70 W |
This is a GPU-strong, CPU-weak device. The N100 is a low-power efficiency core, so every model must fit entirely in VRAM. The moment inference spills to the CPU, speed collapses.
The tested device is the first-generation entry ZimaCube. On a ZimaCube 2, the stronger CPU can only improve the results — the GPU-side numbers stay the same because the card is identical.
Software
| Software | Version / notes |
|---|---|
| Inference engine | llama.cpp (built from source with the CUDA sm_120 backend; use CUDA 12.8 for builds — 13.1 has known MMQ kernel issues) |
| Server | llama-server (OpenAI-compatible API) |
| Model format | GGUF (including Unsloth Dynamic quantization) |
The RTX PRO 2000 is a Blackwell card (sm_120). It needs a recent CUDA runtime and inference backend — older prebuilt llama.cpp releases may not recognize the card.
Methodology
- Synthetic benchmark:
llama-benchwith full GPU offload (-ngl 99), testing prompt processing (512/2048 tokens) and token generation (128/512 tokens). - Real generation:
llama-cliwith--temp 0.7, single-turn mode, fixed random seed, real Chinese Q&A. - Multi-turn and long context: multi-turn conversations and needle-in-a-haystack retrieval through the OpenAI-compatible llama-server API.
- Context capacity: loading the model at 64K / 128K context and measuring VRAM usage.
Models Under Test
| Model | Architecture | Total params | Active params | Quantization | Size |
|---|---|---|---|---|---|
| Qwen3.8-27B | Dense | 27.3B | 27.3B (all active) | Q3_K_XL / Q2_K_XL / IQ2_XXS | 8.4–12.5 GiB |
| Qwen3.6-35B-A3B | Hybrid MoE | 34.7B | About 3B | IQ3_XXS / Q2_K_XL | 11.4–12.3 GiB |
Qwen3.6-35B-A3B is a hybrid architecture: 10 full-attention layers and 30 SSM (Mamba) + MoE layers, 256 experts with 8 active per token. It targets agent and coding scenarios.
Benchmark Results
Synthetic (llama-bench, full GPU offload, tokens/s)
| Model (quant) | Size | Prefill pp2048 | Decode tg512 |
|---|---|---|---|
| Qwen3.8-27B Q3_K_XL | 12.51 GiB | 670 | 17.9 |
| Qwen3.8-27B Q2_K_XL | 9.93 GiB | 670 | 20.7 |
| Qwen3.8-27B IQ2_XXS | 8.38 GiB | 570 | 23.1 |
| Qwen3.6-35B-A3B IQ3_XXS | 12.29 GiB | 1490 | 68.1 |
| Qwen3.6-35B-A3B Q2_K_XL | 11.44 GiB | 1564 | 74.4 |
Real Generation (llama-cli, –temp 0.7, Chinese Q&A)
| Quantization | Generation speed |
|---|---|
| IQ3_XXS | 64.7 t/s |
| Q2_K_XL | 70.3 t/s |
Multi-Turn and Long-Context Validation
| Test | Result |
|---|---|
| Multi-turn context retention | Passed — turn 2 correctly recalled earlier information |
| Needle-in-a-haystack retrieval | Passed — retrieved earlier content |
| Repeated-call stability | Passed — stable at about 63 t/s |
Agent Workload Suitability
The Qwen3.6-35B-A3B hybrid architecture targets agent and coding scenarios, and the measurements confirm it: multi-turn context retention and needle-in-a-haystack retrieval both pass, and repeated calls stay stable at about 63 t/s. For a DeepSeek Harness or Codex-style coding agent, that is a fluid interactive speed, and the 35B total parameters give the model reasoning and coding ability that a small dense model lacks.
The constraint on this 16 GB card is context. Agent conversations grow, and while 64K is comfortable, 128K is tight. If your agent workloads need the model’s native 256K window, the 20 GB RTX 4000 SFF Ada achieves it with KV q4 quantization.
Why the MoE Model Is 3.5x Faster Than a Dense 27B
This is the most valuable finding of the test.
- A dense model reads all 27B weights for every generated token, so decode speed is capped by memory bandwidth. The measured effective decode bandwidth is about 224 GiB/s, which puts a 27B model at 18–23 t/s.
- The MoE model activates only 8 of 256 experts (about 3B parameters) per token, reading an order of magnitude less weight and sidestepping the bandwidth bottleneck. That is how it reaches 65–70 t/s.
On VRAM-limited devices, MoE is the best way to get both parameter capacity and decode speed.
VRAM Is the Only Hard Limit
- The IQ3_XXS quantization of 35B-A3B is only 12.3 GiB, leaving about 2.4 GB of headroom in 16 GB.
- Higher quantizations (Q4 is about 19–20 GB) or bigger models exceed 16 GB. Once CPU offload kicks in, the N100 drags speed down to unusable levels.
- “The strongest MoE that fits in 16 GB” is this device’s performance ceiling.
Power
Measured at full generation load, the card draws about 55–70 W (at the 70 W limit without exceeding it) and 6–12 W idle. For a NAS that runs 24/7, the efficiency is excellent.
Context Capacity
| Context | VRAM used | Headroom | Verdict |
|---|---|---|---|
| 64K | 13.5 GB | 2.4 GB | Comfortable, recommended |
| 128K | 14.8 GB | 1.1 GB | Workable, tight |
| ~150K | ~15.6 GB | ~0.3 GB | Theoretical limit |
| 256K (model native) | >16 GB | — | Does not fit |
Context overhead is tiny (about 22 MiB per 1K tokens) because only 10 attention layers need KV cache; the SSM layers keep constant state.
Conclusion and Recommendations
Best Model
Recommended: Qwen3.6-35B-A3B (IQ3_XXS quantization, 3.06 bpw)
- It is the largest, strongest model that fits entirely in 16 GB of VRAM.
- Decode at about 65 t/s — 3.5x a 27B dense model — is enough for a fluid agent experience.
- The 35B total parameters bring far more knowledge, reasoning, and coding ability than any dense model of the same footprint.
- IQ3_XXS is the sweet spot between quality and speed. Q2_K_XL is about 8% faster, but the 2-bit quality loss is more noticeable.
On a 16 GB card this is the ceiling of the tier. For serious coding and knowledge-base workloads, the 122B / Flash tier is the next step — it does not fit in 16 GB and belongs to larger cards.
Usage Notes
- Sample at 0.6–0.7, never greedy (temp=0). Greedy sampling makes this reasoning model degrade into endless repetition.
- It is a reasoning model. It emits a chain of thought before the answer, and thinking tokens count toward the limit. Keep
max_tokensat 2048 or more, or the answer gets cut off mid-thought. - Response fields. The final answer is in
content; the reasoning trace is inreasoning_content(the same extension field as DeepSeek).
Use Cases
- Local agents: coding, task orchestration, tool calling
- Private AI assistant and RAG knowledge-base Q&A on a NAS
- Low-power, always-on local inference
- Not suitable for: contexts beyond 128K, or larger models at high quantization
Deployment (OpenAI-Compatible Server)
Use the same containerized server as the deployment guide — nothing to compile, the image bundles CUDA kernels up to sm_120:
docker run -d --name llm-server --gpus all -p 8080:8080 \ |
The server exposes an OpenAI-compatible API that mainstream agent frameworks (the OpenAI SDK and others) can call directly:
from openai import OpenAI |
Appendix: Verified GPU Profile
NVIDIA RTX PRO 2000 Blackwell |