← All machines

Multi-GPU · DIY build

4x RTX 3090 (used) on EPYC 7003, open frame

The classic 96 GB home rig: four used 3090s on risers around a single-socket EPYC board with a full x16 link for every card. It runs 70B dense models at 8-bit or ~120B MoE models in VRAM.

Memory for models

91.5 GB

VRAM across all cards

Memory bandwidth

936 GB/s

per card; 4 cards take turns on each token

Parts

~$2,178 + unpriced parts

GPU, motherboard, ram, risers, case and cooling prices not included

Largest at 4-bit

82.6 GB at 8,192 tokens of context

gpt-oss-20b, 4-bit

~117–171 tok/sestimate

no measurement on this hardware yet

Parts

PartQtyEach
GPUNVIDIA GeForce RTX 3090 (used)4not priced
CPUAMD EPYC 7313P (16-core, 155 W, SP3)1~$913
MotherboardASRock Rack ROMED8-2T (7x PCIe 4.0 x16, 8 DDR4 DIMM slots)1not priced
RAM8x 32GB DDR4-3200 ECC RDIMM8not priced
PSUCorsair HX1500i (1500 W at 115-240 V, 1200 W at 100-115 V)2~$390
RisersPCIe 4.0 x16 riser cables4not priced
CaseOpen-air mining/test frame for 4 GPUs1not priced
CoolingSP3 tower cooler1not priced
StorageCorsair MP600 CORE XT 2TB PCIe 4.0 NVMe1~$485
Priced parts only$2,178GPU, motherboard, ram, risers, case and cooling prices not included

New parts are priced at the maker’s own store or list price. Used cards have no price here yet, and a total with a missing GPU would understate the build, so none is shown.

What it runs at 4-bit

Every model in the catalog at its 4-bit file with 8,192 tokens of context. 29 of 41 fit. Speeds are the median of measured runs on the same GPUs where any exist; otherwise an estimate from memory bandwidth. Try other quants and context lengths.

ModelNeedsFitGeneration speed
Kimi K32.8T, 104B active · UD-Q4_K_XL1406.8 GBcontext memory estimatedDoes not fit
DeepSeek V4 Pro1.6T, 49B active · Q4_K_M890.5 GBcontext memory not countedDoes not fit
Kimi K2.61T, 32B active · UD-Q4_K_XL545.7 GBcontext memory estimatedDoes not fit
DeepSeek V4.1 Flash552B, 16B active · Q4 (DwarfStar)484.5 GBDoes not fit
GLM-5.3753.3B · UD-Q4_K_XL437.4 GBcontext memory estimatedDoes not fit
DeepSeek V3.2671B, 37B active · Q4_K_M379.6 GBcontext memory estimatedDoes not fit
MiniMax M3428B, 23B active · Q4_K_M244.8 GBcontext memory not countedDoes not fit
Qwen3.5 397B-A17B397B, 17B active · Q4_K_M229.1 GBcontext memory estimatedDoes not fit
GLM-5.3 Flash320B, 18B active · UD-Q4_K_XL187.6 GBcontext memory estimatedDoes not fit
Hy3295B, 21B active · Q4_K_M173.6 GBDoes not fit
MiniMax M2.7228.7B · Q4_K_M132.7 GBDoes not fit
Qwen3.8 Flash-Next125B, 6B active · Q4_K_M113.1 GBcontext memory estimatedDoes not fit
Nemotron 3 Super 120B-A12B120B, 12B active · Q4_K_M82.6 GBcontext memory estimatedFits~27–39 tok/sestimate
Qwen3.5 122B-A10B122B, 10B active · Q4_K_M73.0 GBcontext memory estimatedFits~37–54 tok/sestimate
Mistral Medium 3.5 128B128B · Q4_K_M74.0 GBFits~6.1–9.6 tok/sestimate
GLM-4.5-Air106B, 12B active · Q4_K_M70.9 GBFits~28–41 tok/sestimate
Mistral Small 4 119B (2603)119B, 6.5B active · Q4_K_M69.3 GBcontext memory estimatedFits~59–86 tok/sestimate
Llama 4 Scout 17B-16E Instruct109B, 17B active · Q4_K_M62.4 GBcontext memory not countedFits~23–33 tok/sestimate
gpt-oss-120b117B, 5.1B active · MXFP4 (native)60.2 GBcontext memory estimatedFits~85–124 tok/sestimate
Qwen3 Coder Next80B, 3B active · Q4_K_M46.9 GBcontext memory estimatedFits~128–187 tok/sestimate
Llama 3.3 70B Instruct70B · Q4_K_M43.6 GBFits~11–17 tok/sestimate
Nemotron 3.5 Lightning 30B-A3B30B, 3B active · Q4_K_M25.3 GBcontext memory estimatedFits~91–133 tok/sestimate
Qwen3.6 35B-A3B35B, 3B active · Q4_K_M22.4 GBcontext memory estimatedFits~122–178 tok/sestimate
Ornith 1.5 35B-A3B35B, 3B active · Q4_K_M21.9 GBcontext memory estimatedFits~125–183 tok/sestimate
Qwen3 Coder 30B-A3B Instruct30.5B, 3.3B active · Q4_K_M19.5 GBFits~116–169 tok/sestimate
Gemma 4 31B IT30.7B · Q4_K_M18.9 GBcontext memory estimatedFits~25–39 tok/sestimate
Granite 4.2 30B29.3B · Q4_K_M20.3 GBFits~25–40 tok/sestimate
Qwen3.8 27B27B · Q4_K_M18.2 GBcontext memory estimatedFits~26–41 tok/sestimate
Gemma 4 26B-A4B IT25.2B, 3.8B active · Q4_K_M17.4 GBcontext memory estimatedFits~91–132 tok/sestimate
Qwen3.6 27B27B · Q4_K_M17.7 GBcontext memory estimatedFits~27–43 tok/sestimate
Devstral Small 2 24B (2512)24B · Q4_K_M16.1 GBFits~32–50 tok/sestimate
gpt-oss-20b21B, 3.6B active · MXFP4 (native)12.5 GBcontext memory estimatedFits~117–171 tok/sestimate
Phi-414.7B · Q4_K_M11.3 GBFits~52–81 tok/sestimate
Ministral 3 14B Reasoning (2512)13.9B · Q4_K_M10.4 GBFits~56–87 tok/sestimate
Gemma 4 12B IT11.95B · Q4_K_M8.2 GBcontext memory estimatedFits~64–101 tok/sestimate
Qwen3.5 9B9B · Q4_K_M7.0 GBcontext memory estimatedFits~81–127 tok/sestimate
Granite 4.2 8B8.8B · Q4_K_M7.9 GBFits~83–130 tok/sestimate
Gemma 4 E4B IT8B · Q4_K_M6.5 GBcontext memory not countedFits~151–237 tok/sestimate
Qwen3 8B8.2B · Q4_K_M7.3 GBFits~91–143 tok/sestimate
Llama 3.1 8B Instruct8B · Q4_K_M7.1 GBFits~93–146 tok/sestimate
Qwen3.5 4B4B · Q4_K_M4.3 GBcontext memory estimatedFits~167–263 tok/sestimate

Measured speeds

Nobody has published a run on this GPU combination with a stated model, quant and backend that we could find. The speeds above are estimates.

Cards working in parallel

Tensor parallel splits every layer across the cards so they read their share of the weights at the same time, instead of taking turns. It can beat one card’s bandwidth limit, needs fast links between cards, and is kept out of the medians above.

Runs with tensor parallel
ModelQuantBackendGenerationPromptContextMeasured onSource
Qwen3.6 35B-A3BQ5_K - Mediumllama.cpp b10809 CUDA156 tok/s4,059 tok/s512-token prompt04× RTX 3090llama.cpp benchmark discussion2026-09
Qwen3.8 27BQ5_K - Mediumllama.cpp b10809 CUDA77 tok/s1,716 tok/s512-token prompt04× RTX 3090llama.cpp benchmark discussion2026-09

Specifications

VRAM
96 GB
System RAM
256 GB
RAM bandwidth
8 channels x 3200 MT/s x 8 bytes = 204.8 GB/s (AMD lists 204.8 GB/s per socket for the 7313P)
Power supply
3000 W
Estimated load
4x RTX 3090 350 W + EPYC 7313P 155 W + 100 W = 1,655 W
Software
CUDA, Vulkan

Before you build it

  • At ~1,655 W the box exceeds one 15 A household circuit; feed the two PSUs from separate circuits or cap GPU power.
  • A US 15 A / 120 V circuit is 1,800 W on paper, but the NEC 80% rule for continuous loads (3 h+) limits it to 12 A, about 1,440 W, shared with everything else on that circuit.
  • Corsair rates the HX1500i at 1,500 W only on 115-240 V input; at 100-115 V it is a 1,200 W supply.
  • PCIe 4.0 riser cables commonly throw receiver/lane errors; owners fix it by forcing the slot to Gen 3 or using a better riser.
  • A bridge pairs only two cards, so with four 3090s NVLink's tensor-parallel gain falls to about 10%.
  • The ROMED8-2T has seven full x16 PCIe 4.0 slots from one EPYC socket, so four GPUs each get x16; three-slot cards cannot sit side by side, hence risers and an open frame.

Sources

Compared with

Similar machines