JUNC1 Hardware

JUNC1 is the first piece of junc — the prototype machine. It’s a compact, consumer-grade dual-GPU build: enough local GPU memory to run a capable language model for Quorra entirely in VRAM, plus bulk storage for a household’s files, photos, and media.

Specs

  • CPU — AMD Ryzen 7 3700X (8-core)
  • GPU 1 — NVIDIA RTX 5080, 16 GB GDDR7 — primary; runs Quorra’s language model
  • GPU 2 — NVIDIA RTX 3070, 8 GB GDDR6 — reserved for the diagnostic agent
  • RAM — 32 GB DDR4
  • Storage (fast) — 1 TB NVMe SSD (OS and applications)
  • Storage (bulk) — 2 × 4 TB HDD + 1 × 8 TB HDD (household data)
  • PSU — 1000 W Corsair
  • Networking / SSL — nginx reverse proxy, Let’s Encrypt, domain juncyard.com

Both GPUs are passed through to the Ubuntu VM. Total VRAM is 24 GB across the two (non-unified) cards — enough to run a ~14B-parameter model fully in VRAM on the RTX 5080 with headroom to spare.

Virtualization

JUNC1 runs Proxmox as the hypervisor:

VMPurposeAddress
VM 100Ubuntu Server — the entire junc stack192.168.10.10
VM 101Windows 11 — gaming only, unrelated to the project—
(host)Proxmox192.168.0.100

Original parts list: https://pcpartpicker.com/list/vR4Zfp

GPU passthrough — switching the RTX 5080 between VMs

This script moves the RTX 5080 passthrough from the Ubuntu VM to the Windows VM (or back). Edit the UBU / WIN assignments and PCI addresses as needed.

set -euo pipefail
 
GPU_VGA="0000:09:00.0"
GPU_AUDIO="0000:09:00.1"
UBU=100
WIN=101
 
echo "Stopping VMs (ignore errors if already stopped)..."
qm shutdown "$WIN" --timeout 60 || true
qm shutdown "$UBU" --timeout 60 || true
qm stop "$WIN" || true
qm stop "$UBU" || true
 
echo "Removing GPU passthrough from VM $UBU..."
qm set "$UBU" --delete hostpci0
qm set "$UBU" --delete hostpci1
 
echo "Adding GPU passthrough to VM $WIN..."
qm set "$WIN" --hostpci0 "${GPU_VGA},pcie=1,x-vga=1,rombar=0"
qm set "$WIN" --hostpci1 "${GPU_AUDIO},pcie=1"
 
echo "Showing updated configs..."
echo "=== VM $UBU ==="
qm config "$UBU" | egrep -n '^(hostpci|bios|machine|cpu|args|vga)'
echo "=== VM $WIN ==="
qm config "$WIN" | egrep -n '^(hostpci|bios|machine|cpu|args|vga)'
 
echo "Starting Windows VM $WIN..."
qm start "$WIN"