RTX 5080 新主机环境配置实录
#Ollama #RTX5080 #CUDA #Windows #OpenClaw #开发环境
新 9800X3D + RTX 5080 主机组装完成,v2rayA 代理已配置。本文记录完整的环境搭建流程:CUDA 推理栈、开发环境、Docker、SSH,以及接入现有 AI 推理生态(Ollama + OpenClaw)。
一、整机信息与网络架构
| 项目 | 值 |
|---|---|
| CPU | AMD Ryzen 9 9800X3D |
| GPU | NVIDIA RTX 5080 (Blackwell GB203) |
| 系统 | Windows 11 |
| 局域网 IP | 192.168.2.10(WLAN,需设为 Private 网络配置文件) |
| SSH 别名 | milin_desktop |
| 代理 | v2rayA ✅ 已完成 |
1 | MacBook Air M1 (192.168.2.13) |
二、磁盘空间预估(先看再装)
建议在开始安装前规划好 C/D 盘分工,避免 C 盘不足影响游戏空间。
各组件占用
| 组件 | C 盘占用 | 说明 |
|---|---|---|
| Windows 11(含更新) | ~30 GB | 不可移动 |
| 虚拟内存(pagefile) | ~16 GB | 系统自动管理,可迁移到 D |
| NVIDIA Game Ready Driver | ~1.5 GB | 不可移动 |
| CUDA Toolkit 12.8 | ~3.5 GB | 可选择安装路径(建议 C) |
| cuDNN 9.x | ~0.8 GB | 手动解压,可放 D |
| Ollama 应用 | ~0.5 GB | %LOCALAPPDATA%,不可移动 |
| Ollama 模型(默认 C) | ~28 GB | 强烈建议迁移到 D 盘 |
| Python / Miniconda | ~5 GB(base) | 建议安装到 D |
| PyTorch + CUDA 包 | ~8 GB | 随 conda 环境走 |
| VS Code | ~0.5 GB | 不可移动 |
| Git | ~0.5 GB | 不可移动 |
| MSVC Build Tools | ~8 GB | 可选 D 盘 |
| Docker Desktop(WSL2 VHD) | ~15-30 GB | 强烈建议迁移到 D 盘 |
| v2rayA + 其他工具 | ~0.5 GB | — |
| 系统临时文件 / 缓冲 | ~10 GB | — |
C 盘评估
| C 盘大小 | 可用游戏空间(按推荐方案) | 结论 |
|---|---|---|
| 256 GB | ~256 - 80 = 176 GB | 够用,需将模型和 Docker 迁移到 D |
| 500 GB | ~500 - 80 = 420 GB | 充裕,一般无需迁移 |
| 1 TB | ~1024 - 80 = 944 GB | 完全自由 |
推荐方案(C 盘最小占用 ~80 GB):
-
Ollama 模型 → D 盘(节省 28 GB)
-
Docker Desktop VHD → D 盘(节省 15-30 GB)
-
Python/Miniconda → D 盘(节省 13 GB)
-
游戏安装到 D 盘
⚠️ 如果 C 盘 < 256 GB,先执行迁移步骤再安装大型软件。
三、NVIDIA 驱动 + CUDA + cuDNN
3.1 确认驱动版本
RTX 5080 (Blackwell SM 12.0) 需要驱动 575.x 或更高(CUDA 12.8 最低驱动要求)。
1 | # 查看当前驱动版本 |
若版本过低,前往 NVIDIA 官网下载 Game Ready Driver(gaming 场景)或 Studio Driver(推理/开发场景)。
3.2 安装 CUDA Toolkit 12.8
前往 developer.nvidia.com/cuda-downloads,选择:
-
OS: Windows → Architecture: x86_64 → Version: 11 → Installer Type: exe (local)
安装时选择自定义安装,取消勾选"NVIDIA GeForce Experience"和"PhysX"(节省空间)。
1 | # 安装完成后验证 |
3.3 安装 cuDNN 9.x
前往 developer.nvidia.com/cudnn(需 NVIDIA 账号),下载 cuDNN 9.x for CUDA 12.x(Windows zip 包,约 800 MB)。
GUI 操作:浏览器登录 NVIDIA Developer,下载
cudnn-windows-x86_64-9.x.x.x_cuda12-archive.zip
解压后将三个目录合并复制到 CUDA 安装目录:
1 | # 假设 cuDNN 解压到 D:\cudnn-9.x |
验证:
1 | # cuDNN 头文件存在即安装成功 |
四、Ollama 安装与 GPU 推理
4.1 安装
前往 ollama.com 下载 Windows 安装包(exe),一路默认安装。安装完成后 Ollama 以系统托盘 App 形式运行。
注意:Ollama Windows 托盘 App 会将
OLLAMA_HOST强制设为http://127.0.0.1:11434,忽略系统环境变量,无法直接监听局域网(见下节 portproxy 解决方案)。
4.2 迁移模型目录到 D 盘(推荐)
默认模型存放在 C:\Users\<用户名>\.ollama\models(约 28 GB),建议迁移到 D 盘:
GUI 操作:
Win + S→ “编辑系统环境变量” → “环境变量” → “系统变量” → 新建:
1 | 变量名: OLLAMA_MODELS |
设置后重启 Ollama 托盘 App(右键托盘图标 → Quit → 重新打开)。
4.3 获取模型
方案 A:直接从 Ollama 仓库拉取
1 | # 需走代理(推荐 v2rayA 已配置好),下载 22 GB 约 9 分钟(100 Mbps) |
方案 B:从局域网同机迁移(推荐,零流量)
若同一局域网内已有其他 Ollama 实例持有模型,可直接传输 blob 文件,无需从互联网下载。
1 | # 1. 在源机查找 blob 路径(源机 SSH 上执行) |
注:写完 manifest 后无需重启 Ollama 服务,
ollama list立即可见模型。传输前先在目标机执行Add-MpPreference -ExclusionPath 'D:\ollama-models'排除 Defender 扫描,否则写速度从 38 MB/s 降至 1 MB/s。
4.4 验证 GPU 推理
1 | # 启动模型(首次加载较慢,之后有缓存) |
五、Ollama 直接绑定局域网(NSSM 服务方案)
本文采用 NSSM 服务替代 Ollama Windows 托盘 App,可以完整控制环境变量,不需要 portproxy。
1 | # 安装 NSSM(若未安装) |
托盘 App 会强制覆盖 OLLAMA_HOST(即使设了系统环境变量),NSSM 服务不受此影响。
六、Windows 防火墙入站规则
以管理员身份运行 PowerShell:
1 | # Ollama(注意:Profile 设为 Any 以覆盖 Public 网络情况) |
关键坑:Windows 新连接 WiFi 时默认设为 Public 网络配置文件,而 Private/Domain Profile 规则对 Public 网络无效。需手动改为 Private,或将规则 Profile 设为 Any:
1
2 # 推荐:将局域网 WiFi 改为 Private(更安全)
Set-NetConnectionProfile -Name "你的WiFi名" -NetworkCategory Private
从 Mac 验证 Ollama 可达(绕过代理):
1 | curl --noproxy '*' -s http://192.168.2.10:11434/api/tags | python3 -m json.tool |
Windows Defender 排除项:大文件写入时 Defender 实时扫描会将传输速度从 38 MB/s 降至 1 MB/s。需将模型目录加入排除:
1 Add-MpPreference -ExclusionPath 'D:\ollama-models'
七、OpenSSH Server
1 | # 安装 |
7.1 各设备免密 SSH 互信矩阵
| 方向 | 源机器 | 目标机器 | 场景 |
|---|---|---|---|
| ① | Mac M1 (lin) | milin_desktop (milin) | 日常 SSH / VS Code Remote |
| ② | Mac M1 (lin) | N100 (milin) | 服务器管理(可能已配置) |
| ③ | milin_desktop (milin) | Mac M1 (lin) | 文件推送、OpenClaw SSH 工具 |
| ④ | milin_desktop (milin) | N100 (milin) | 跨机开发、脚本部署 |
| ⑤ | N100/OpenClaw (root) | milin_desktop (milin) | Agent 远程执行任务 |
Windows 授权密钥路径说明:
- 普通用户:
C:\Users\milin\.ssh\authorized_keys- 管理员组成员(本机 milin 为管理员):
C:\ProgramData\ssh\administrators_authorized_keys- 两个文件都存在时,sshd 优先读管理员文件
① Mac → milin_desktop(Windows)
Windows 端跨平台
ssh-copy-id实现详见 《Windows ssh-copy-id:跨平台公钥一键安装脚本》。
1 | # Mac 上执行(先尝试 ssh-copy-id) |
若报错(Windows 路径问题),改为手动:
1 | # Mac 上获取公钥内容 |
1 | # Windows PowerShell(管理员)粘贴执行 |
1 | # Mac 验证(应无需密码) |
② Mac → N100(Linux)
1 | # Mac 上执行(标准流程) |
③ milin_desktop → Mac(Windows 发起)
1 | # 在 Windows PowerShell 生成密钥对(若 C:\Users\milin\.ssh\id_rsa 不存在) |
1 | # 在 Mac 上将上面输出的公钥追加到 authorized_keys |
④ milin_desktop → N100(Windows 发起)
1 | # Windows 公钥(与上面 ③ 相同,一个密钥对用于多台机器) |
1 | # 在 N100 上追加 |
⑤ N100/OpenClaw → milin_desktop(Linux 发起)
OpenClaw 容器已有专用 SSH key(/root/.openclaw/.ssh/openclaw_id),将其公钥添加到 Windows。
1 | # 在 N100 上获取 OpenClaw 容器的公钥 |
1 | # 在 Windows PowerShell(管理员)追加 |
在 OpenClaw 的 openclaw.json 中配置新的 SSH 连接目标:
1 | // 示例:添加 milin_desktop 为可操作节点 |
1 | # 从 N100 验证(模拟 OpenClaw 容器) |
八、更新 Mac SSH config
编辑 ~/.ssh/config,追加:
1 | Host milin_desktop |
验证:
1 | ssh milin_desktop "hostname && echo OK" |
九、开发环境
9.1 Git
前往 git-scm.com 下载安装包,安装时选择:
-
Default editor: VS Code(后面安装)
-
Line endings: Checkout as-is, commit as-is(跨平台项目按需选择)
1 | # 验证 |
9.2 Python / Miniconda(推荐安装到 D 盘)
前往 docs.anaconda.com/miniconda 下载 Windows 安装包。
GUI 安装:运行安装包 → 选择 “Just Me” → 安装路径改为
D:\miniconda3(节省 C 盘)→ 不勾选"Add to PATH"(用 conda prompt 或 VS Code 集成)
1 | # 用 conda prompt 验证 |
9.3 PyTorch + CUDA 12.8(AI 推理环境)
1 | # 创建专用环境(推荐 Python 3.12) |
离线/代理环境可用 schtasks 后台运行:
1
2 D:\miniconda3\python.exe -m pip install torch --index-url https://download.pytorch.org/whl/cu128 `
--proxy http://127.0.0.1:20171 --progress-bar off >> C:\Temp\pytorch_install.log 2>&1
注意:RTX 5080 (Blackwell SM 12.0) 需要 PyTorch 2.7+ 才有原生 Blackwell 内核优化。早期版本可运行但性能不完整。
9.4 C++ 开发环境
方案 A:MSVC Build Tools(轻量,推荐)
前往 visualstudio.microsoft.com/visual-cpp-build-tools 下载安装包(~8 GB)。
GUI 安装:运行安装包 → 勾选"使用 C++ 的桌面开发"→ 右侧组件保留默认 → 安装
1 | # 验证(用 Developer Command Prompt for VS 2022) |
方案 B:MSYS2 / MinGW-w64(Linux 风格 GCC,可并行安装)
1 | # 用 winget 安装 |
将 C:\msys64\ucrt64\bin 添加到系统 PATH。
1 | # 验证 |
9.5 VS Code
前往 code.visualstudio.com 下载安装包。
GUI 安装:安装时勾选"添加到右键菜单"两个选项,方便从资源管理器直接打开
推荐安装扩展(Ctrl+Shift+X):
| 扩展 | 用途 |
|---|---|
| Python (Microsoft) | Python 语言支持 |
| C/C++ (Microsoft) | C++ 语言支持 |
| Remote - SSH (Microsoft) | SSH 远程开发 |
| Jupyter (Microsoft) | Notebook 支持 |
| GitLens | Git 增强 |
| Pylance | Python 类型检查 |
1 | # 在 Mac 上通过 SSH 远程开发(安装 Remote-SSH 扩展后) |
9.6 Claude Code
方式 A:CLI(推荐,基于 Node.js)
先安装 Node.js LTS:
1 | winget install OpenJS.NodeJS.LTS |
安装 Claude Code CLI:
1 | npm install -g @anthropic-ai/claude-code |
首次使用需在浏览器完成账号授权:
1 | claude |
在项目目录中启动:
1 | cd D:\your-project |
方式 B:VS Code 扩展(GUI 操作)
Ctrl+Shift+X→ 搜索 “Claude Code” → 安装 → 登录
扩展与 CLI 共享同一账号认证,二者可并存。
WSL2 中使用(推荐用于 Linux 项目)
1 | # 在 WSL2 Ubuntu 终端中 |
WSL2 中的 Claude Code 可直接访问 Windows 文件(/mnt/d/...),推荐用于跨平台开发。
十、Docker Desktop
10.1 安装前提:WSL2
1 | # 管理员 PowerShell |
重启后继续设置 Ubuntu 用户名密码。
10.2 安装 Docker Desktop
前往 docker.com/products/docker-desktop 下载安装包。
GUI 安装:推荐选择 WSL2 backend(默认)
10.3 迁移 Docker 数据到 D 盘
Docker Desktop WSL2 VHD 默认在 C:\Users\<用户名>\AppData\Local\Docker,可占用 15-30 GB,建议迁移:
GUI 操作:Docker Desktop → Settings → Resources → Advanced → Disk image location,改为
D:\Docker
或用 WSL2 方式迁移(更彻底):
1 | # 关闭 Docker Desktop |
10.4 验证
1 | docker run hello-world |
十一、将 OpenClaw 切换到新主机
编辑 N100 上的 /home/milin/dockerfile/openclaw/.env:
1 | ssh MyUbuntu "sed -i 's|OPENCLAW_LLM_API_URL=.*|OPENCLAW_LLM_API_URL=http://192.168.2.10:11434|' \ |
重启容器使配置生效(.env 变更需 restart,不会热重载):
1 | ssh MyUbuntu "cd /home/milin/dockerfile/openclaw && docker compose down && docker compose up -d" |
已在 OpenClaw 配置的主力 LLM:
| 配置项 | 值 |
|---|---|
OPENCLAW_LLM_PROVIDER |
ollama |
OPENCLAW_LLM_API_URL |
http://192.168.2.10:11434 |
OPENCLAW_LLM_MODEL |
qwen3.5-35b-a3b:latest |
OPENCLAW_LLM_FALLBACK_PROVIDER |
anthropic |
OPENCLAW_LLM_FALLBACK_MODEL |
claude-sonnet-4-6 |
十二、验证完整链路
1 | # 1. Ollama API 可达(Mac 上执行) |
十三、完整配置检查清单
基础网络与系统
| # | 步骤 | 操作 | 状态 |
|---|---|---|---|
| 1 | v2rayA 代理 | — | ✅ |
| 2 | OpenSSH Server | Add-WindowsCapability OpenSSH.Server + Automatic |
✅ |
| 3 | 防火墙规则 22 | New-NetFirewallRule -LocalPort 22 -Profile Any |
✅ |
| 4 | Mac SSH config | 追加 Host milin_desktop + Host milin_win11 |
✅ |
| 5 | ① Mac → milin_desktop 免密 | ssh-copy-id 或手动写 authorized_keys |
✅ |
| 5b | ② Mac → N100 免密 | ssh-copy-id milin@192.168.2.14 |
✅ |
| 5c | ③④ milin_desktop → Mac/N100 免密 | 生成 Windows 密钥对,推公钥到两端 | ⬜ |
| 5d | ⑤ N100/OpenClaw → milin_desktop 免密 | openclaw_id.pub → Windows authorized_keys | ⬜ |
CUDA 推理栈
| # | 步骤 | 操作 | 状态 |
|---|---|---|---|
| 6 | NVIDIA Driver ≥ 575.x | nvidia-smi 确认 | ✅ 610.74 |
| 7 | CUDA Toolkit 12.8 | 官网下载安装 | ✅ nvcc 12.8 |
| 8 | cuDNN 9.x | zip 解压复制到 CUDA 目录 | ✅ |
| 9 | Ollama 安装 + NSSM 服务 | nssm install ollama + OLLAMA_HOST=0.0.0.0:11434 |
✅ |
| 10 | 模型目录迁移至 D 盘 + Defender 排除 | OLLAMA_MODELS=D:\ollama-models;Add-MpPreference -ExclusionPath 'D:\ollama-models' |
✅ |
| 11 | 模型获取 | 从 milin_win11(192.168.2.12)局域网传输 qwen3.5-35b-a3b Q4_K_M(22 GB,~9 min) | ✅ |
| 12 | portproxy 设置 | 不需要,Ollama NSSM 服务直接绑定 0.0.0.0:11434 | ✅ |
| 13 | 防火墙规则 11434 + 网络 Private | “Ollama LAN” 规则 -Profile Any;WiFi 改为 Private |
✅ |
开发环境
| # | 步骤 | 操作 | 状态 |
|---|---|---|---|
| 14 | Git | git-scm.com 安装 + 配置用户名 | ✅ |
| 15 | Miniconda (D 盘) | D:\miniconda3,已 conda init powershell |
✅ |
| 16 | PyTorch CUDA 12.8 | torch-2.11.0+cu128,2026-07-18 安装完成 |
✅ |
| 17 | MSVC Build Tools | C++ 桌面开发工作负载 | ⬜ |
| 18 | MSYS2/MinGW (可选) | winget install MSYS2.MSYS2 | ⬜ |
| 19 | VS Code | code.visualstudio.com | ⬜ |
| 20 | VS Code 扩展 | Python / C++ / Remote-SSH | ⬜ |
| 21 | Node.js LTS | winget install OpenJS.NodeJS.LTS | ⬜ |
| 22 | Claude Code CLI + 登录 | npm install -g @anthropic-ai/claude-code;需本机浏览器 OAuth |
⬜ |
Docker(milin_desktop)
| # | 步骤 | 操作 | 状态 |
|---|---|---|---|
| 23 | WSL2 | wsl --install + 重启 |
⬜ |
| 24 | Docker Desktop | docker.com 安装 | ⬜ |
| 25 | 迁移 Docker 数据到 D | Settings → Disk image location | ⬜ |
| 26 | CUDA 容器验证 | docker run --gpus all nvidia/cuda... |
⬜ |
⚠️ WSL2 使用
networkingMode=mirrored(不要用bridged)。bridged模式会将物理 WiFi 网卡加入 Hyper-V 软件网桥,导致所有 Windows 流量经过软件桥,LAN 传输速度从 40 MB/s 降至 100 KB/s。
OpenClaw 接入
| # | 步骤 | 操作 | 状态 |
|---|---|---|---|
| 27 | 更新 .env LLM 配置 | OPENCLAW_LLM_API_URL=http://192.168.2.10:11434;OPENCLAW_LLM_MODEL=qwen3.5-35b-a3b:latest |
✅ |
| 28 | 重启 OpenClaw 容器 | docker compose down && docker compose up -d |
✅ |
| 29 | 端到端推理验证 | N100 → milin_desktop Ollama 推理,首次加载 ~9s,后续正常 | ✅ |
十四、旧 2070S 主机处置
旧 Win11 机器(192.168.2.12, i9 + RTX 2070 Super)可保留为备用:
1 | // openclaw.json fallback 链(可选) |
旧机现有 NSSM Ollama 服务和防火墙规则无需改动,随时可切回(修改 .env 中 OPENCLAW_LLM_API_URL 并重启 OpenClaw)。
十五、llama.cpp 推理性能测试(2026-07-19)
Ollama 底层虽然也是 llama.cpp,但直接使用 llama.cpp 的
llama-server在 prompt 处理速度上有显著优势。
15.1 测试环境
-
模型:
qwen3.5-35b-a3b Q4_K_M(20.49 GiB,34.66B 参数,MoE 架构) -
GPU:RTX 5080 16GB VRAM
-
llama.cpp 版本:b10067(CUDA 12.4 build)
-
安装路径:
D:\llamacpp\,模型硬链接至D:\llamacpp\qwen3.5-35b-a3b-q4km.gguf
15.2 Benchmark 结果
| 组 | 配置 | pp128 (tok/s) | pp512 (tok/s) | pp2048 (tok/s) | tg128 (tok/s) |
|---|---|---|---|---|---|
| A | ngl=99, mmap=1(默认) | 128.81 | 155.35 | — | 11.13 |
| B | ngl=99, mmap=0(推荐) | 132.90 | 164.26 | — | 11.54 |
| C | ngl=99, mmap=0, KV=q8_0 | 120.25 | 139.55 | 132.95 | 9.80 |
| D | ngl=99, mmap=0, KV=q4_0 | 111.53 | 133.48 | 121.45 | 10.90 |
| E | ngl=76, mmap=0(18层CPU) | 128.76 | 158.69 | — | 11.12 |
| Ollama 对比 | — | 39.9 | — | — | 10.96 |
15.3 结论
| 维度 | 结论 |
|---|---|
| pp 速度 | llama.cpp 比 Ollama 快 3-4 倍(164 vs 39.9 tok/s),长 prompt 体验显著改善 |
| tg 速度 | 与 Ollama 持平(~11 tok/s);社区 53+ tok/s 需模型完整装入 VRAM |
| tg 瓶颈原因 | 模型 20.49 GiB > VRAM 16.3 GiB,约 4 GiB 权重在 CPU RAM,每 token 经 PCIe 读取(32 GB/s vs GDDR7 960 GB/s) |
| mmap=0 | 微小提升(+3-6%),推荐开启 |
| KV 量化 | 小 context 下降速明显;大 context(64K+)时 q8_0 是必要取舍 |
| CPU 层分配 | 18 层 CPU 与全 GPU 速度相同——瓶颈不在层数分配,在 VRAM 容量 |
若要突破 tg 速度:换 Q3_K_M 量化(~15 GiB,完整装入 VRAM),tg 预计 25-40 tok/s,但精度下降。
15.4 llama-server 启动方案
下载:github.com/ggerganov/llama.cpp/releases/latest
下载 llama-bXXXXX-bin-win-cuda-12.4-x64.zip + cudart-llama-bin-win-cuda-12.4-x64.zip,解压到同一目录。
模型硬链接(避免复制 20 GB):
1 | mklink /H D:\llamacpp\qwen3.5-35b-a3b-q4km.gguf ^ |
标准启动(≤32K context,最佳质量):
1 | llama-server.exe -m D:\llamacpp\qwen3.5-35b-a3b-q4km.gguf ^ |
大 context 启动(32K-128K,KV 量化节省 VRAM):
1 | llama-server.exe -m D:\llamacpp\qwen3.5-35b-a3b-q4km.gguf ^ |
llama-server 提供 OpenAI 兼容 API(
/v1/chat/completions),与 Ollama API(/api/generate)不同,接入 OpenClaw 需将 provider 改为openai。
十六、注意事项
-
cuDNN 下载需 NVIDIA 账号:需在 developer.nvidia.com 注册后才能下载(免费)
-
PyTorch 选 cu128:RTX 5080 Blackwell 需 PyTorch 2.7+,选错 CUDA 版本 GPU 无法识别
-
NSSM 服务替代托盘 App:Ollama 托盘 App 会强制覆盖
OLLAMA_HOST为127.0.0.1,改用 NSSM 服务才能绑定 0.0.0.0 -
WiFi 网络必须为 Private:新连接的 WiFi 默认为 Public,防火墙 Private/Domain 规则不生效,导致端口看似开放实则被拦截
-
WSL2 用 mirrored 而非 bridged:
bridged模式把物理 WiFi 网卡变成软件桥成员,所有 Windows 流量(不止 WSL2)都经过软件桥,WiFi 吞吐从 40 MB/s 降至 100 KB/s -
Defender 实时扫描影响大文件写入:传输 22 GB 模型前先
Add-MpPreference -ExclusionPath 'D:\ollama-models',否则速度从 38 MB/s 降至 1 MB/s -
OpenSSH 必须 Set-Service Automatic:默认安装后为手动模式,重启后 sshd 不启动
-
Docker WSL2 VHD 迁移需完全关闭 Docker Desktop:迁移前右键托盘 → Quit Engine
-
.env 变更需重启容器:OpenClaw
.env文件的变更不会热重载(openclaw.json内的字段才会热重载)
