I did not buy the ZimaCube 2 for AI. I bought it to be the storage backend for my Proxmox cluster.
But then I noticed the PCIe x16 slot. And the fact that it runs entirely off motherboard power — no 6-pin, no 8-pin, no adapter cables. Just slot power. That changed the math.
One Intel Arc Pro B50 later, the ZimaCube 2 is now running llama.cpp and OpenClaw for local inference — alongside its day job as the cluster shared storage brain. Here is the full story: why I chose the B50, how the install went, what ZimaOS Beta brought to the table, and what this means for anyone considering a GPU upgrade on the ZimaCube 2.
Why the Intel Arc Pro B50
Choosing a GPU for a compact NAS is not like choosing one for a gaming desktop. You have three hard constraints:
- Slot power only. The ZimaCube 2 PCIe slots do not route auxiliary power cables. The GPU has to run entirely off what the motherboard provides — 75W max.
- Low-profile or single-slot. The chassis is 240 × 221 × 220 mm. A full-height, dual-slot card will not physically fit.
- Quiet and cool. This thing runs 24/7 in a living space. No blower fans, no thermal throttling at idle.
The Intel Arc Pro B50 checked every box:
|
Requirement
|
Arc Pro B50
|
|---|---|
|
Slot power only
|
✅ 50W TDP — runs entirely off PCIe slot (no cables)
|
|
Low-profile
|
✅ Single-slot, half-height bracket included
|
|
VRAM for AI
|
✅ 16GB GDDR6 — enough for 13B–20B parameter models
|
|
AV1 encoding
|
✅ Hardware AV1 encode/decode
|
|
Price-to-VRAM
|
✅ Best VRAM-per-dollar in its class
|

The Install: One Slot, No Cables, Done
The physical install took under ten minutes.
Open the top panel — the PCIe slots are right there, no drive cages to work around. The B50 slides into the x16 slot. The half-height bracket lines up with the rear opening. Tighten one screw. Close the panel. Done.
No power cables. No adapter dongles. No cramming cables into spaces they do not fit. The ZimaCube 2 PCIe implementation is genuinely clean — the slot is positioned with enough clearance above the drive bays that even a dual-slot card would not interfere with storage.
This is not a given on compact NAS hardware. Most devices in this form factor do not even have PCIe. The ones that do often place the slot in positions that restrict what you can actually install. IceWhale got the layout right here.
ZimaOS Beta: Native Arc Driver Support
I planned to wipe ZimaOS and install Ubuntu Server. Then IceWhale reached out with a ZimaOS Beta build that includes native Intel Arc GPU driver support.
The Beta build handles driver detection automatically. On first boot after installing the B50, ZimaOS recognized the card, loaded the Intel i915 driver with Arc extensions, and exposed it to the Docker runtime. No kernel module compilation. No GRUB tweaks. It just worked.
What I am Running: llama.cpp + OpenClaw
With the GPU recognized, I deployed two containers:
llama.cpp (GPU-accelerated inference)
- Model: Mistral 13B Q5_K_M (fits in ~12GB VRAM with 8K context)
- Backend: Intel SYCL (Arc GPU)
- Use cases: Code review, documentation summarization, local chatbot, home automation natural language processing

OpenClaw (local AI gateway)
- Unified API endpoint for multiple local models
- Routes requests between llama.cpp and smaller CPU-based models
- Connects to Home Assistant for voice-controlled smart home queries
Performance is exactly what you would expect from a 50W single-slot card: not a datacenter GPU, but fast enough to be genuinely useful. Mistral 13B generates at roughly 25–35 tokens per second — faster than reading speed, which is the threshold that makes local AI feel responsive rather than painful.

Keeping the Day Job: Storage Backend + AI on One Machine
Here is what I did not do: I did not sacrifice the ZimaCube 2 original purpose. The storage pools that serve the Proxmox cluster are still there. The ZFS snapshots still run on schedule. The Docker containers that power the infrastructure have not moved.
What changed is that the ZimaCube 2 now does two things at once:
Storage Layer
- 4× HDD RAID-Z1 (bulk data)
- 2× NVMe RAID 1 (VM images)
- 1× NVMe SLOG/L2ARC (cache)
- NFS exports to 3 Proxmox nodes
-
ZFS snapshot automation
AI Layer
- llama.cpp with Mistral 13B
- OpenClaw AI gateway
- Code review assistant
- Document summarization
- Home Assistant NLP integration
The 40GB RAM (8GB stock + 32GB upgrade) gets split: roughly 24GB for ZFS ARC, 8GB for Docker containers and ZimaOS, and 8GB left for system overhead. The GPU 16GB VRAM handles model weights independently — it does not compete with system memory.
CPU load during inference is minimal since llama.cpp offloads to the GPU. Storage I/O performance is unaffected because the NVMe pools handle the active data, and the GPU is not touching the SATA controller.
Why Not a Separate AI Box?
I considered building a dedicated AI node. There are good reasons to separate inference from storage — isolation, dedicated power budget, independent reboot cycles. But there is one compelling reason not to:
You already have a PCIe slot.
The ZimaCube 2 was designed with expansion in mind. If you are going to buy a device that includes a PCIe x16 slot specifically for future upgrades, not using it is the more expensive decision. A separate AI box means another power supply, another chassis, another network link, another thing to manage.
One machine. Two roles. The ZimaCube2 handles both.
Add a GPU to your ZimaCube 2 and start running local AI →
Frequently Asked Questions
Does the ZimaCube 2 PCIe slot provide enough power for a GPU?
Yes — for slot-powered cards up to 75W. The Intel Arc Pro B50 (50W TDP) and similar low-power GPUs run entirely off PCIe slot power. The ZimaCube 2 PCIe slots do not route auxiliary power cables, so you need to choose a card that does not require them. The B50, NVIDIA RTX A2000, and Intel Arc A310/A380 are all viable options.
What GPU would you recommend for the ZimaCube 2?
For AI inference specifically, prioritize VRAM over compute. The Intel Arc Pro B50 (16GB) and NVIDIA RTX A2000 (12GB) are the best slot-powered options currently available. For media transcoding only, the Intel Arc A310 or A380 are cheaper and still provide hardware AV1 encoding. Avoid any GPU that requires a 6-pin or 8-pin power connector.
Can I run a ZimaCube 2 with a GPU 24/7 without thermal issues?
Yes. The ZimaCube 2 thermal design separates the CPU/PCIe zone from the drive zone. The Arc Pro B50 is a 50W card — it does not generate enough heat to overwhelm the chassis. Under sustained inference load, GPU temperatures stay within normal operating range without additional cooling modifications.
Can the ZimaCube 2 run both shared storage and AI workloads at the same time?
Yes. The original build described here uses the ZimaCube 2 as both the Proxmox cluster NFS/ZFS storage backend and a local AI inference server with llama.cpp and OpenClaw. The GPU VRAM handles model weights independently of system memory, and the NVMe storage pools ensure VM I/O is not bottlenecked by inference workloads.
What is the largest model I can run on a 16GB GPU in the ZimaCube 2?
A 16GB GPU like the Intel Arc Pro B50 can comfortably run quantized 13B–14B parameter models (Q5_K_M or Q4_K_M quants) with 4K–8K context windows, or 20B–34B models at lower quantization levels. For most self-hosted AI use cases — code assistance, document summarization, home automation NLP — a well-tuned 13B model with good quantization is the sweet spot.
Zima Campaign Hub
More to Read

I Turned an Ikea Kallax Into a 10-Inch Rack Homelab With the ZimaCube 2
Rack-mounted homelabs sound great until you realize you don't want an enterprise jet engine invading your living room. The 10-inch mini rack movement is...

How I Migrated 14000 Photos to the ZimaCube 2 With Zero Data Loss — An Immich Migration Guide
Move your Immich library and PostgreSQL database seamlessly. Discover the exact 2.5GbE LAN transfer workflow to upgrade to ZimaCube 2 with zero data loss.

How One Device Replaced My Entire Cloud — Nextcloud + Local AI on the ZimaCube 2
Stop paying for cloud storage. Read how a self-hosted NAS with Nextcloud can securely sync your files and run a fast local AI assistant...

