Win11 + RTX 5080 本地 Coding 模型测试笔记
测试环境:Windows 11 + NVIDIA GeForce RTX 5080 16GB + AMD Ryzen 7 9800X3D + llama.cpp
主要目标:寻找适合 OpenCode 本地编程 的模型及最佳量化/Context 配置。
先看结果 (还是留着买5080的钱去订阅吧)
| 排名 | 模型 | 量化 | Context | Prompt | Generation | VRAM |
|---|---|---|---|---|---|---|
| 🥇 | Qwen3-14B | Q4_K_M | 16K | 1247.1 | 84.5 | 12.68GB |
| 🥇 | Qwen3-14B | Q4_K_M | 32K | 1170.8 | 85.8 | 15.12GB |
| 🥈 | Qwen3-14B | Q4_K_M | 4K | 715.1 | 83.5 | 10.75GB |
| 🥉 | Qwen3-14B | Q8_0 | 8K | 363.8 | 27.8 | 15.95GB |
| 4 | Qwen3-Coder-30B-A3B | Q4_K_M | 8K | 120.5 | 16.3 | ~15.7GB |
| 5 | GLM-4.7-Flash | Q4_K | --- | 82.2 | 12.4 | --- |
不同测试的 prompt、Context 和运行状态并不完全一致,因此表格主要用于实际体验和硬件适配参考,不能视为严格的模型 benchmark。
1. 测试环境
硬件
| 项目 | 配置 |
|---|---|
| CPU | AMD Ryzen 7 9800X3D |
| CPU 核心 | 8 核 / 16 线程 |
| GPU | NVIDIA GeForce RTX 5080 |
| GPU 显存 | 16303 MiB ≈ 16GB |
| NVIDIA Driver | 610.52 |
| CUDA | 13.3 |
| 系统 | Windows 11 |
| llama.cpp | b10375 / build 10417 等测试版本 |
| GPU Backend | CUDA |
| Flash Attention | -fa on |
llama.cpp 目录
text
D:\AI\llama-cuda
模型目录
text
D:\AI\models
2. 测试参数说明
本次主要使用:
powershell
-ngl 999
含义:
尽可能将模型层全部卸载到 GPU。
powershell
-c 8192
Context Window:
text
8192 tokens = 8K
测试过程中还使用:
text
16384 = 16K
32768 = 32K
powershell
-fa on
开启 Flash Attention。
当前 llama.cpp 版本要求明确指定:
powershell
-fa on
不能写成单独的:
powershell
-fa
否则会被解析成:
text
--flash-attn '-p'
导致:
text
unknown value for --flash-attn: '-p'
3. Qwen3-Coder-30B-A3B-Q4_K_M
模型:
text
qwen3-coder-30b-a3b-instruct-q4_k_m.gguf
文件大小:
text
18,556,688,704 bytes
≈ 17.27 GiB
模型:
text
Qwen3-Coder-30B-A3B-Instruct
Q4_K_M
测试参数
powershell
.\llama-cli.exe `
-m "D:\AI\models\qwen3-coder-30b-a3b-instruct-q4_k_m.gguf" `
-ngl 999 `
-c 8192 `
-fa on `
-p "用 TypeScript 实现一个 LRU Cache,要求支持泛型、最大容量和 TTL。"
测试结果:
text
Prompt: 120.5 tok/s
Generation: 16.3 tok/s
VRAM: ≈ 15.7GB
评价
优点:
- Coding 能力较强
- 30B 级别模型
- 复杂代码理解能力较好
缺点:
- RTX 5080 16GB 显存压力非常大
- Generation 只有约 16 tok/s
- OpenCode Agent 多轮工作时等待时间明显
结论
text
复杂架构 / 深度代码分析:★★★★☆
日常 Coding:★★☆☆☆
速度:★★☆☆☆
显存效率:★★☆☆☆
4. GLM-4.7-Flash-Q4_K
测试模型:
text
GLM-4.7-Flash-Q4_K.gguf
注意:
本次使用的是
Q4_K,不是Q4_K_M。
测试结果:
text
Prompt: 82.2 tok/s
Generation: 12.4 tok/s
评价
Generation:
text
12.4 tok/s
明显低于 Qwen3-14B-Q4_K_M:
text
84.5 tok/s
因此在当前硬件上的实际 Coding 体验并不理想。
结论
text
Coding:★★★☆☆
速度:★☆☆☆☆
OpenCode:★★☆☆☆
5. Qwen3-14B-Q4_K_M
模型:
text
Qwen3-14B-Q4_K_M.gguf
这是目前测试中表现最好的模型。
5.1 4K Context
测试结果:
text
Prompt: 715.1 tok/s
Generation: 83.5 tok/s
VRAM: 10745 MiB
约:
text
10.75GB
结果
text
Generation = 83.5 tok/s
已经非常快。
6. Qwen3-14B-Q4_K_M / 16K
测试结果:
text
Prompt: 1247.1 tok/s
Generation: 84.5 tok/s
VRAM: 12679 MiB
显存:
text
12.68GB
剩余:
text
16303 - 12679
= 3624 MiB
约:
text
3.5GB
评价
这是目前最推荐的配置。
text
Qwen3-14B-Q4_K_M
+
16K Context
+
Full GPU Offload
+
Flash Attention
速度:
text
≈84.5 tok/s
显存:
text
≈12.7GB
具有比较充足的显存余量。
7. Qwen3-14B-Q4_K_M / 32K
测试结果:
text
Prompt: 1170.8 tok/s
Generation: 85.8 tok/s
VRAM: 15115 MiB
显存:
text
15.12GB
剩余:
text
16303 - 15115
= 1188 MiB
约:
text
1.16GB
评价
非常值得注意:
text
16K:
84.5 tok/s
32K:
85.8 tok/s
Generation 基本没有下降。
但:
text
16K:
12.68GB
32K:
15.12GB
显存已经达到:
text
92.7%
因此:
日常 OpenCode
推荐:
text
16K
大型项目临时分析
可以:
text
32K
但不建议长期作为默认配置。
8. Qwen3-14B-Q8_0
模型:
text
Qwen3-14B-Q8_0.gguf
测试参数:
powershell
.\llama-cli.exe `
-m "D:\AI\models\Qwen3-14B-Q8_0.gguf" `
-ngl 999 `
-c 8192 `
-fa on `
-p "用 TypeScript 实现一个高性能 LRU Cache,要求支持泛型、最大容量、TTL,并解释设计思路和时间复杂度。"
测试结果:
text
Prompt: 363.8 tok/s
Generation: 27.8 tok/s
VRAM: 15950 MiB
显存:
text
15.95GB
剩余:
text
16303 - 15950
= 353 MiB
仅约:
text
0.35GB
9. Q4_K_M vs Q8_0
这是本次最有价值的对比之一。
| 项目 | Q4_K_M | Q8_0 |
|---|---|---|
| 模型 | Qwen3-14B | Qwen3-14B |
| Context | 8K~32K | 8K |
| Generation | 83~86 tok/s | 27.8 tok/s |
| VRAM | 10.7~15.1GB | 15.95GB |
| 显存余量 | 较充足 | 仅353MB |
| OpenCode | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| 综合推荐 | ★★★★★ | ★★★ |
Q8 的问题非常明显:
text
84.5 tok/s
↓
27.8 tok/s
速度下降约:
text
67%
同时显存几乎完全占满。
10. 当前所有模型测试汇总
| 排名 | 模型 | 量化 | Context | Prompt | Generation | VRAM |
|---|---|---|---|---|---|---|
| 🥇 | Qwen3-14B | Q4_K_M | 16K | 1247.1 | 84.5 | 12.68GB |
| 🥇 | Qwen3-14B | Q4_K_M | 32K | 1170.8 | 85.8 | 15.12GB |
| 🥈 | Qwen3-14B | Q4_K_M | 4K | 715.1 | 83.5 | 10.75GB |
| 🥉 | Qwen3-14B | Q8_0 | 8K | 363.8 | 27.8 | 15.95GB |
| 4 | Qwen3-Coder-30B-A3B | Q4_K_M | 8K | 120.5 | 16.3 | ~15.7GB |
| 5 | GLM-4.7-Flash | Q4_K | --- | 82.2 | 12.4 | --- |
不同测试的 prompt、Context 和运行状态并不完全一致,因此表格主要用于实际体验和硬件适配参考,不能视为严格的模型 benchmark。
11. 当前最佳配置
🥇 日常 OpenCode
text
模型:
Qwen3-14B-Q4_K_M.gguf
参数:
-ngl 999
-c 16384
-fa on
实际测试:
text
Generation:
84.5 tok/s
VRAM:
12679 MiB / 16303 MiB
这是目前最推荐的配置。
🥈 大型项目
text
Qwen3-14B-Q4_K_M
-ngl 999
-c 32768
-fa on
实测:
text
85.8 tok/s
15115 / 16303 MiB
适合临时进行:
- 大型代码库分析
- 多文件重构
- 架构分析
- 大量代码上下文
但是不建议长期默认使用。
🥉 高质量代码分析
text
Qwen3-Coder-30B-A3B-Q4_K_M
虽然:
text
≈16.3 tok/s
但模型规模更大,可以作为:
text
复杂架构
复杂重构
代码 Review
困难问题
的备用模型。
12. 最终推荐
针对:
text
RTX 5080 16GB
Ryzen 7 9800X3D
Windows 11
llama.cpp
OpenCode
目前推荐:
text
┌─────────────────────┐
│ OpenCode │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ Qwen3-14B-Q4_K_M │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ 16K Context │
│ -ngl 999 │
│ -fa on │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ ~84.5 tok/s │
│ ~12.7GB VRAM │
└─────────────────────┘
推荐等级
Qwen3-14B-Q4_K_M:★★★★★
目前它是你这张 RTX 5080 16GB 上测试出来的最佳 速度 / 显存 / Coding / Context 综合平衡点。