15 May 2025
TL;DR: 两万元预算打造 RTX 5070 + Ultra 7 工作站,Katago 推理速度提升百倍,做成送给业余六段舅舅的 AI 神助手。
自从去年决定来 CMU 读 Master 之后,一直对 AI 的应用,尤其是本地部署很感兴趣。七月某日,逛r/localllama时突然联想到 - 之前大火过的 AlphaGo 也属于 AI 呀,不知道有没有开源,如果能在自己电脑上跑岂不有趣?可以借助 AI 的力量,来体验小学学围棋时没体验够的胜利喜悦 😆。简单搜索之后发现 AlphaGo 虽未开源模型(原版的模型需要在几百个 TPU 上运行,即使开源也没几个人可以用),但是真的有社区复刻的开源模型:Katago,而且相比原版模型更加压缩。得益于算法和硬件的进步,在消费级硬件上 Katago 现在可以流畅运行,超过人类最高水准。惊喜之余脑海里留下了一个种子。
2025 年五月回上海两周,思考了一下有什么有意义的礼物可以带给我五年未见,热爱围棋,业余六段的舅舅。遂决定为我舅舅装一台能运行 Katago 的工作站:即有意义,也满足一下我的装机愿望:)。
既然决定 DIY,就一定要达到品牌机和组装机不一样的效果 (否则有被爸妈吐槽的风险 🙃)。DIY 潜在的优势是 1)相同预算达到比品牌机更高的配置; 2)用上比组装机更高品质的部件;3)针对自己的使用场景优化配置:只为自己需要的性能买单,并为未来升级预留空间。这些”潜在”的优势并不是自带的,需要认真设计才能充分发挥出来。如果需求仅仅是用最低价格买到某个配置(如 i7+5080),那一定是京东上的组装机比自己 DIY 便宜。
外设的重要性:我的目标给舅舅最好的使用体验而不是最高的跑分。外设对使用体验至关重要,因此预算也应该适当分配。
均衡性:这台电脑不仅跑 Katago,还需要跑各种日常任务。因此需要选择一个均衡的配置,满足未来~ 5 年的计算需求,而不是买一个最强的 GPU 就完事了。
系统层面的性价比:一台最具性价比的电脑不是由最具性价比的部件组成的,因为在衡量一个配件性价比的时候需要考虑到整台电脑的成本。举个例子:i9 比 i7 快 20%并贵 50%。 如果 i7 占整机成本的 25%,则升级到 i9 使整机成本增加 12.5%,但性能增加 20%。针对能把 i9 完全用上的使用场景,这个升级是完全值得的。
稳定性:因为我装完这台电脑以后就要回匹茨堡,没法解决售后问题,所以零部件尽量不能坏,至少也要方便保修,因此会倾向大厂成熟的产品。
CPU
Ultra 5,7, 9? - 最有代表性的三款 Ultra 5 245, Ultra 7 265 和 Ultra 9 285 核心频率的区别可以忽略不计。主要的差异来自于核心数量。
CPU 型号 | P-核心 | E-核心 | 总核心数 | 总线程数 | 建议零售价 (MSRP) |
---|---|---|---|---|---|
Ultra 5 245 | 6 | 8 | 14 | 16 | $329 |
Ultra 7 265 | 8 | 12 | 20 | 28 | $419 |
Ultra 9 285 | 8 | 16 | 24 | 32 | $589 |
考虑到 KataGo 的推理主要依赖 GPU 性能,而不是 CPU 多核性能,Ultra 7 265 提供了最佳的性价比。Ultra 9 285 的额外 4 个 E 核心和更高的价格并不能为我们的使用场景带来明显的性能提升。同时,Ultra 5 缺少的两个 P 核心,因为这个架构不支持 SMT,在日常确实可能被需要到。
主板
CPU 超频对于性能的提升非常有限(新一代 CPU 的基础频率已经很高了),因此选择放弃 CPU 超频。而很多 AI 应用(如 LLM 推理)瓶颈在内存带宽,因此内存超频的功能更加有用一些。M810 平台的主板,因为是超级性价比之选,功能砍得有点多,因此推荐折中的 B860 平台。
显卡
型号 | 显存容量 | FP16 Tensor TFLOPS(FP32 Accumulate) | 建议零售价(人民币) | 市场售价(人民币) |
---|---|---|---|---|
RTX 5090 D | 32 GB GDDR7 | 419.2 TFLOPS (Wikipedia, NVIDIA) | 16 499 元起 (IT 之家, Sina Finance) | 28 000 – 39 000 元 (36Kr, Sina Finance) |
RTX 5080 | 16 GB GDDR7 | 225.1 TFLOPS (Wikipedia, ZOL AI) | 8 299 元起 (IT 之家, IT 之家) | ≈ 8 299 元 (IT 之家) |
RTX 5070 Ti | 16 GB GDDR7 | 177.4 TFLOPS (Wikipedia, Sina Finance) | 6 299 元起 (Sina Finance, Sohu News) | 7 000 – 8 000 元 (Sohu) |
RTX 5070 | 12 GB GDDR7 | 123.9 TFLOPS (Wikipedia, Gamersky) | 4 599 元起 (Gamersky) | ≈ 4 599 元 (什么值得买) |
RTX 5060 Ti | 16 GB GDDR7 | 92.9 TFLOPS¹ | 3 599 元起 (SMZDM Post) | ≈ 3 400 元 (Zhihu) |
机箱
内存
SSD
电源
散热器
显示器
参数 | S3225QC | U3225QE |
---|---|---|
型号 | S3225QC | U3225QE |
屏幕尺寸 | 31.6 英寸 | 31.5 英寸 |
分辨率 | 3840×2160 | 3840×2160 |
面板类型 | QD-OLED | IPS Black |
刷新率 | 120 Hz | 120 Hz |
对比度 | 理论无限 : 1 | 3,000 : 1 |
响应时间 | 0.03 ms (GtG) | 5 ms (GtG) |
色域覆盖 | 99 % DCI-P3 | DCI-P3 99 % / sRGB 100 % |
HDR 认证 | VESA DisplayHDR True Black 400 | DisplayHDR 600 |
扬声器 | 内置 5×5 W | 无内置扬声器 |
USB-C 供电 | 最⾼ 90 W | 最⾼ 140 W |
端口 | 2×HDMI 2.1, 1×DisplayPort 1.4, 1×USB-C (DP+PD) | 1×HDMI 2.1, 2×DisplayPort 1.4 (输⼊), 1×DisplayPort 1.4 (输出), 2×Thunderbolt 4 (上/下⾏), 1×USB-C (KVM 上⾏), 4×USB-A, 1×2.5 GbE RJ45, 1×3.5 mm 音频输出 |
市场售价(人民币) | ¥ 6,499 | ¥ 5,999 |
预算:主机+外设 ¥20000 左右
部件 | 型号名称 | 预算占比 |
---|---|---|
显示器 | Dell S3225QC (31.6 英寸 4K QD-OLED 120Hz) | 31.0% |
显卡 (GPU) | ASUS PRIME RTX 5070 12G | 24.1% |
CPU | Intel Core Ultra 7 265 | 12.3% |
主板 | ASUS ROG STRIX B860-F WIFI | 9.6% |
内存 (RAM) | Crucial 英睿达 64GB (2x32GB) DDR5 5600MHz | 6.2% |
固态硬盘 (SSD) | Samsung 三星 9100 PRO 1TB PCIe 5.0 NVMe | 5.3% |
键鼠 | Logitech 罗技 ALTO KEYS K98M + MX Master 3S | 4.8% |
电源 (PSU) | Thermalright 利民 SP850W 白金 ATX3.1 | 3.0% |
机箱 | ASUS 华硕 ProArt 创艺国度 PA401 (木艺铁韵版) | 2.9% |
CPU 散热器 | Thermalright 利民 Peerless Assassin 120 (PA120) | 0.9% |
想愉快的使用 Katago 需要搞定几个组件:1)Katago 命令行程序 2)Katago 模型权重 3)Katrain 图形界面(如果对性能需求不高,可以跳过前面步骤,直接安装 Katrain 使用自带的 OpenCL 后端。愿意折腾 TensorRT 后端能再快 2.5 倍)。
一步一步来:
先从 Github 上下载最新版的 Katago 程序,根据操作系统和使用的加速库/后端有不同的下载选项。英伟达 GPU 性能最强的后端是 Tensor RT。用 Windows 可以下载 katago-v1.16.0-trt10.9.0-cuda12.8-windows-x64.zip 。以下是不同后端的对比:
可执行文件名称 | 平台 | 后端 | 构建对应版本 | 说明 |
---|---|---|---|---|
katago-opencl | Linux、Windows | OpenCL | — | 通用 GPU 加速,无需特定驱动 (GitHub, Zhihu Column, CSDN Blog) |
katago-cuda12.5 | Linux、Windows | CUDA | 12.5 | 针对安装了 CUDA 12.5 驱动的 NVIDIA GPU 进行优化 (GitHub, Zhihu Column, CSDN Blog) |
katago-trt10.2.0 | Linux、Windows | TensorRT | 10.2.0 | 在支持 TensorRT 10.2.0 的 GPU 上拥有最高吞吐率 (GitHub, Zhihu Column, CSDN Blog) |
katago-cpu | Linux、Windows | Eigen | — | 纯 CPU 回退版本,无需 GPU 即可运行 (GitHub, Zhihu Column, CSDN Blog) |
katago-cpu-avx2 | Linux、Windows | Eigen AVX2 | — | 针对支持 AVX2 指令集的 CPU 进行优化 (GitHub) |
从命名中可以发现需要搭配 TensorRT 10.9.0 和 CUDA 12.8 (其实 CUDNN 也需要,不然跑不了)。这非常有做 AI 的感觉了 😆。
安装 Visual Studio, 社区版本即可。运行英伟达的库需要用到 Visual Studio 提供的 DLL 文件。
从英伟达网站下载 CUDA Toolkit 安装包。CUDA 向后兼容所以即使安装了比 CUDA 12.8 更新的版本也没有关系。
CUDA 安装成功后安装 CUDNN
注意安装完 CUDNN 后需要把以下文件从 CUDNN 文件夹复制到 CUDA 的安装目录:
bin\cudnn*.dll (including cudnn64_9.dll)
→ C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\bin
include\cudnn*.h
→ C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\include
lib\cudnn*.lib
→ C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\lib
更新系统环境变量
在命令提示符里运行where cudnn64_9.dll
确保 CUDNN 可以被其他程序调用
安装 TensorRT,先从这里下载, 然后按照以下步骤(文档):
下载 TensorRT 压缩包
TensorRT-10.x.x.x.Windows.win10.cuda-11.8.zip
TensorRT-10.x.x.x.Windows.win10.cuda-12.9.zip
TensorRT-10.x.x.x
的子目录。(NVIDIA Docs)说明:
10.x.x.x
表示 TensorRT 的版本号。cuda-x.x
表示对应的 CUDA 版本,例如 11.8 或 12.9。
添加 TensorRT 库文件到系统 PATH
您可以通过以下两种方式之一将 TensorRT 的库文件添加到系统的环境变量 PATH 中:
方法一:添加解压目录中的 lib 路径到 PATH
<安装目录>\TensorRT-10.x.x.x\lib
方法二:将 DLL 文件复制到 CUDA 安装目录
<安装目录>\TensorRT-10.x.x.x\lib
目录中的所有 .dll
文件复制到您的 CUDA 安装目录,例如:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\bin
其中 vX.Y
是您的 CUDA 版本号,例如 v11.8
。 2. CUDA 安装程序通常会自动将其 bin 目录添加到系统的 PATH 中。
安装 TensorRT 的 Python 包
<安装目录>\TensorRT-10.x.x.x\python
目录。.whl
文件,例如:python.exe -m pip install tensorrt-*-cp3x-none-win_amd64.whl
将 cp3x
替换为您的 Python 版本,例如 cp310
表示 Python 3.10。
此时 Katago 已经安装完毕,可以移步下载模型权重:https://katagotraining.org/networks/
找到第一步下载的 Katago 程序和第 6 步下载的 Katago 模型权重,运行性能测试验证安装成功
Katrain 是一个为 Katago 设计的图形界面,从 Github 上下载安装程序:Katrain.exe
安装成功后启动,单击左上角菜单按钮,打开”通用和引擎设置”界面。把”KataGo 运行文件路径”和”KataGo 模型文件路径”更新为在第 1 步和第 6 步下载的文件。”KataGo 引擎设置”中”分析中每步棋运算步数”可以从默认值增加。回到主界面,所有的安装就大功告成啦。
Katago 有不同架构(大小)的模型,最新推出参数最多的 b28c512 系列实力最强。但上一代的 b18c384 模型效率占优,能相同时间内能测试更多变化,适合在硬件性能有限的情况下对比多种下法的优劣。
虽然官方 Readme 已经提前剧透 TensorRT 是目前性能最强的后端,但是在 50 系列 GPU 上究竟对于 OpenCL 和 CUDA 有多大优势没有具体说明。虽然通用后端也能用,但英伟达的 TensorRT 到底能带来多大提升?这直接关系到老黄软件护城河的坚实程度。CPU 和 GPU 哪家跑 CNN 更快毫无悬念,但 CPU 是不是在要求不高的情况下也够用了呢?带着这两个好奇,我把所有的后端都用两种网络架构测了一遍。
还有一个疑问是 Katago 究竟多少个访问数够用,我让 Chatgpt 总结了一下发现结果其实挺惊人的 - Katago 不需要很多算力就可达到超人类的水准了。这还是根据 2020 年版的模型总结的,2024 年甚至有网友说最新模型一次访问就可以达到 8 段水平。堆更多访问量的意义对学习围棋来说主要在于可以分析棋盘上其他下法的优劣。
段位水平 | 建议访问次数 / 步† | 主要依据 | 注释 |
---|---|---|---|
4 段 | ≈ 6 visits | portkata 校准公式 (2020) (GitHub) | — |
5 段 | ≈ 8 visits | 同上 (GitHub) | 博主常用”8 次”作 5d 练习 |
6 段 | ≈ 10 visits | 同上 (GitHub) | — |
7 段 | ≈ 12 visits | 同上 (GitHub) | — |
8 段 | ≈ 14 visits | 同上 (GitHub) | — |
9 段 | ≈ 16 visits | 同上;实测能击败 Zen7 9d (GitHub) | |
顶业余 / 准职业 | ≈ 128 visits | OGS 讨论:几十~百次已超最强业余 (Online Go Forum) | b28c512 额外 +300 Elo (Reddit) |
超人类 | ≥ 2 048 visits | OGS「潜在段位膨胀」& 对抗策略论文 (2022) (Online Go Forum, OpenReview) | 72 % 对抗胜率仍可破防 |
“极限推衍” (科研 / 题材挖掘) |
10 000 – 100 000 visits | 研究者与 L19 讨论:万级可显著减少偶发失误、稳定劫争 (Life In 19x19, Life In 19x19) | 收益递减,但可作超长读秒或漏洞检测 |
所有的结果来自于:.\katago.exe benchmark -model path_to_model
因为 Katago 用的算法 MCTS 在并行运算的情况下性能会受一些影响,因此跑分分别报告推荐线程数下的每秒访问次数和最大每秒访问次数。这两个数字一般相差不大。
后端 | 设备 | 推荐线程数 | 每秒访问次数(在推荐线程数下) | 最大每秒访问次数(任意线程数) | 倍速 |
---|---|---|---|---|---|
Eigen(CPU) | Ultra 7 265 | 20 | 37.63 | 37.63 | 1.00x |
AVX2(CPU) | Ultra 7 265 | 20 | 51.66 | 51.66 | 1.37x |
Metal | Apple M3 Max | 12 | 348.28 | 348.28 | 9.26x |
OpenCL | RTX 5070 | 24 | 1250.27 | ~1339 | 33.24x |
CUDA | RTX 5070 | 48 | 2294.01 | ~2400 | 60.97x |
TensorRT | RTX 5070 | 64 | ~3262 | ~3299 | 86.72x |
后端 | 设备 | 推荐线程数 | 每秒访问次数(在推荐线程数下) | 最大每秒访问次数(任意线程数) | 倍速 |
---|---|---|---|---|---|
Eigen(CPU) | Ultra 7 265 | 16 | 13.48 | ~15.13 | 1.00x |
AVX2(CPU) | Ultra 7 265 | 20 | 22.05 | 22.05 | 1.64x |
Metal | Apple M3 Max | 8 | 135.27 | ~138.61 | 10.04x |
OpenCL | RTX 5070 | 24 | 580.03 | ~580 | 43.03x |
CUDA | RTX 5070 | 24 | 926.79 | ~962 | 68.76x |
TensorRT | RTX 5070 | 40 | 1397.10 | ~1424 | 103.66x |
从跑分上来看:
回顾整个装机和测试的过程,我最大的感受是如今 AI 工具在消费级硬件上的表现真的是出乎意料的强大。从 AlphaGo 问世至今算法和硬件的巨大发展使本来需要在数据中心中运行的 AI 模型可以在一个上午就部署在个人电脑上流畅运行。而现在这个进程正在 LLM 上重演。我们已经看到 2020 年 175B 的 GPT-3 在 MMLU 只有 43.9%,而 2025 年的 Qwen 3 4B 则达到接近 70%,参数量只有原来的 1⁄44,并且一张 RTX 4090 就能本地推理——充分说明算法与硬件五年间的飞跃。AI 已经颠覆了围棋界,往日的世界冠军因为找不到下棋的乐趣,选择去清华读 MBA。当每个人能在自己的设备上运行比自己更加聪明的 AI 时,给世界带来的变化又会怎样呢?
这样一思考感叹 AI 神奇的同时不可避免的有些焦虑。最简单的预测就是接下来可以程式化检验对错的任务(比如游戏,选择题,根据测试写代码),都可预见的在 RL 环境搭好之后被 AI 迅速解决并超越人类的表现。而随着多模态和算力的进步,RL 的环境将能够容纳越来越多种类的任务,甚至引入 AI 评委,让 AI 自我迭代。往极限思考一下,人不就是从出生就开始 RL 训练的具身智能吗?😜 所以 AI 完全替代人类的瓶颈在于: (1) RL 环境还无法模拟地球 OL (2)AI 模型无法复刻人类感官的输入 (3)模型训练缺乏人类动辄数十年的长文本上下文数据。
由此可见,短期内的理性的应对有:1)当训练这些 AI 的人 2)当使用这些 AI 的人 3)离这些要被颠覆的行当远远的 😆。
中长期的应对,则在于发展自己的跨任务/跨行业/跨领域经验,去扎根 AI 缺乏训练数据和训练环境的独特复合领域。
人对恐惧来源于未知 - 对于未来的不确定性。在 AI 带来大变革的时代,最能让人安心的是快速学习的能力 - 毕竟 AI 在可见的未来还是需要有人去训练,去维护,去操作的。
如果你对 AI 的发展有自己的思考,或对本文装机方案有任何疑问或建议,欢迎留言交流~
期待与你在下篇博文中再见!下一篇计划写 CMU Intro to Deep Learning 课程打 Kaggle 比赛的探索 🚀