ARTIFACT // LAUNCH-LLAMA-CPP-N-CPU-MOE.SH (SH)
llama.cpp 原生 --n-cpu-moe 消费级独显 + 双通道 DDR5 异构 MoE 启动脚本(12GB–24GB 显存) (launch-llama-cpp-n-cpu-moe.sh)
通过 nvidia-smi 检测可用显存,将 100% 注意力层与 Q8_0 KV Cache 锁定在独显内(-ngl 99 -fa),并通过原生 --n-cpu-moe 将指定层数的稀疏专家权重卸载至双通道 DDR5 内存。
[核心实测结论 / TL;DR]本配置包「llama.cpp 原生 --n-cpu-moe 消费级独显 + 双通道 DDR5 异构 MoE 启动脚本(12GB–24GB 显存)」(文件名:launch-llama-cpp-n-cpu-moe.sh,格式:SH)是 Tinker AI 实测工坊配套指南《llama-cpp-n-cpu-moe-hybrid-offload-16gb-24gb-vram-ddr5-vs-rtx-5080-super-24gb-5070-super-18gb》的参数化生产模板。支持在本地浏览器实时定制 MoE 模型 GGUF 路径(30B-A3B 或 80B-A3B) (MOE_GGUF_PATH=./models/Qwen3-30B-A3B-Q4_K_M.gguf)、卸载至 DDR5 内存的专家层数 (--n-cpu-moe N) (N_CPU_MOE_LAYERS=16)、物理 CPU 线程数 (-t,勿开超线程) (CPU_THREADS=12)、上下文窗口大小 (-c) (CTX_TOKENS=32768) 等 4 项核心变量,默认遵循 127.0.0.1 回环绑定与最小权限规范。
01 // HOMELAB本地 AI / HomeLab· 验证日期:2026-11-06
查看全部 42 套配置附件 →launch-llama-cpp-n-cpu-moe.sh
查看配套实测指南 →llama.cpp 原生 --n-cpu-moe 消费级独显 + 双通道 DDR5 异构 MoE 启动脚本(12GB–24GB 显存)
通过 nvidia-smi 检测可用显存,将 100% 注意力层与 Q8_0 KV Cache 锁定在独显内(-ngl 99 -fa),并通过原生 --n-cpu-moe 将指定层数的稀疏专家权重卸载至双通道 DDR5 内存。
参数化定制变量 (Variables — 自动保存在本地浏览器)
UTF-8 编码 · 零延迟实时编译
#!/usr/bin/env bash # Tinker AI — Mainstream 12GB–24GB GPU + Dual-Channel DDR5 MoE Offload Launcher (Guide #40) set -euo pipefail MODEL="./models/Qwen3-30B-A3B-Q4_K_M.gguf" NCMOE="16" THREADS="12" CTX="32768" echo "=== [1/3] Checking GPU Free VRAM & PCIe Link State ===" if command -v nvidia-smi >/dev/null 2>&1; then nvidia-smi --query-gpu=name,memory.total,memory.free,pcie.link.gen.current,pcie.link.width.current --format=csv fi echo "=== [2/3] Verifying llama-server Supports Native --n-cpu-moe ===" ./build/bin/llama-server --help 2>&1 | grep -E -- "--n-cpu-moe|-ncmoe" | head -n 2 echo "=== [3/3] Starting Hybrid MoE Server (-ngl 99 --n-cpu-moe $NCMOE, Attention+KV on GPU, $NCMOE Expert Layers in DDR5) ===" ./build/bin/llama-server \ -m "$MODEL" \ -ngl 99 \ --n-cpu-moe "$NCMOE" \ -fa -ctk q8_0 -ctv q8_0 \ -c "$CTX" -t "$THREADS" \ --host 0.0.0.0 --port 8080
PARAMETER SPECIFICATION // 参数化变量规范说明表
「launch-llama-cpp-n-cpu-moe.sh」可定制环境变量与默认值说明
本配置模板(SH 格式)支持 4 项运行时参数注入,所有替换均在本地浏览器内完成。
| 模板占位符 | 参数用途说明 | 安全默认值 | 填写示例 |
|---|---|---|---|
{{MOE_GGUF_PATH}} | MoE 模型 GGUF 路径(30B-A3B 或 80B-A3B) | ./models/Qwen3-30B-A3B-Q4_K_M.gguf | ./models/Qwen3-30B-A3B-Q4_K_M.gguf |
{{N_CPU_MOE_LAYERS}} | 卸载至 DDR5 内存的专家层数 (--n-cpu-moe N) | 16 | 16 |
{{CPU_THREADS}} | 物理 CPU 线程数 (-t,勿开超线程) | 12 | 12 |
{{CTX_TOKENS}} | 上下文窗口大小 (-c) | 32768 | 32768 |
PAIRED HARDWARE MANIFEST // 配套实测环境与边界记录
配套指南《单张 12GB–24GB 消费级显卡 + 双通道 DDR5 跑通 30B 与 80B MoE 大模型:llama.cpp 原生 --n-cpu-moe 专家卸载实测与 RTX 5070 SUPER (18GB) / 5080 SUPER (24GB) 显存选型》验证基线
实测硬件与操作系统 (Hardware & OS)
实测平台:AMD Ryzen 9 9900X + 64GB 双通道 DDR5-6400 CL30(实测读取 ~84 GB/s)+ RTX 4070 (12GB) / RTX 5060 Ti (16GB) / RTX 5070 Ti (16GB) / RTX 4090 (24GB) | 规格推算对照:NVIDIA RTX 5070 SUPER (18GB GDDR7 192-bit · ~672 GB/s) 与 RTX 5080 SUPER (24GB GDDR7 256-bit 32 Gbps · ~1,024 GB/s)
锁定软件栈与模型版本 (Pinned Versions)
llama.cpp b4920+ (upstream native `--n-cpu-moe` / `-ncmoe` & `--cpu-moe` / `-cmoe` support)CUDA 12.8 (`GGML_CUDA=1` + Flash Attention `-fa`)Models: Qwen3-30B-A3B-Q4_K_M.gguf (18.6 GB, 48 layers) & Qwen3-Next-80B-A3B-Q4_K_M.gguf (48.2 GB, 48 layers)
离线与安全边界 (100% 本地台式机独显 + DDR5 内存离线运行)
所有 GGUF 权重与 `--n-cpu-moe` 异构张量切分均在本地 PCIe 与系统内存间完成,无任何外部网络依赖。
已知限制与失败边界 (Known Limits)
- 表 1 中 RTX 4070 (12GB)、RTX 5060 Ti (16GB)、RTX 5070 Ti (16GB) 与 RTX 4090 (24GB) 为本站 Ryzen 9 9900X + DDR5-6400 平台实测数据;而 **RTX 5070 SUPER (18GB)** 与 **RTX 5080 SUPER (24GB)** 两行为基于单颗 3GB (24Gb) GDDR7 显存规格的**理论推算值**,在表中已明确标注 `[规格推算]`。
- `--n-cpu-moe N` 仅对**稀疏混合专家模型(MoE)**有奇效(因为单 Token 仅激活约 3B 专家权重)。对于稠密模型(如 `Qwen3-32B`、`Llama-3.3-70B`),一旦溢出到双通道 DDR5(~84 GB/s),生成速度依然会跌至个位数。
DEPLOYMENT CHECKLIST // 配置落地核验步骤
部署 launch-llama-cpp-n-cpu-moe.sh 后的 3 步验收清单
- 已通过 `llama-server --help | grep n-cpu-moe` 确认当前 `llama.cpp` 版本支持原生 `--n-cpu-moe` (`-ncmoe`) 参数。
- 已在 BIOS 或任务管理器中确认台式机 DDR5 内存处于双通道模式且已开启 XMP/EXPO 高频(如 DDR5-6000/6400,而非默认 4800)。
- 已将 `-t` 设为 CPU 物理核心数(如 `-t 8` 或 `-t 12`,不计超线程),避免超线程争抢双通道内存控制器带宽。