
从家用电脑到本地大模型工作站(一)
最近本地大模型爆火,qwen 3.5 / gemma 4 / qwen 3.6 性能优异,关键是模型的参数量在20B-35B之间,非常适合本地部署。原本我想升级下硬件,但看看居高不下的显卡价格和内存,还是将它默默的移回了购物车里。
且慢!咱去年不是还屯了两张AMD MI50吗?当时有些嫌弃它空有高带宽,但算力却着实凑活,还缺少专门用于矩阵乘法、低精度/混合精度的硬件与软件支持,一直被这么闲置着。翻翻小黄鱼,这两张卡涨了不少钱,索性拿出来在老电脑上用起来。

说是老电脑,其实2024年为了玩黑猴做了一些升级。老电脑是AM4平台的,CPU升级为极具性价比的5700x,内存升级为ddr4 32G (后悔当时没有升级到64G),另外显卡升级了AMD 7900xt(AMD粉无疑,打钱!)。打算将老电脑改造为家用服务器,主要用于文本类为主的本地大模型推理服务,初步评估:
- CPU够用,有显卡的情况下CPU一般不是推理的瓶颈。
- 原来的主板是微星的 B450m Mortar MAX,做工不错,但奈何只能支持PCIe3.0,第二个显卡槽还和m.2-2的插口冲突。这是主要的升级项。
- 内存捉襟见肘,但目前价格过高,计划后续升级吧(目标插满128G)。
- 既然有了两张MI 50,AMD 7900xt 显卡用在家用服务器上就不太合适了,给它找了一个兼容 oculink 和 usb4 的显卡坞,连接其它电脑、笔记本也可以发光发热。
- 上次升级的电源是 ATX3.1 850w 的,粗算一下也基本够用(MI 50单张限制功耗 250 w * 2 + cpu 65 w + 其它 100w ),保持。
说干就干。第一项选购主板。其实严格讲来,原来的 b450m 主板也不是不能用,但两张显卡只能一张跑在 pcie 3.0 *8 另一张跑在 pcie 3.0 * 4 的通道上了。这么做虽然在模型参数全加载到显存上时影响有限,但本着可稳定有效使用的前提,还是升级一下主板。
家用电脑上多显卡支持的主板并不多,对于 AM5 平台就是 x570 系列主板了。筛选下来,我决定试试华硕的 ws-x570 ace,最重要的是看重它有三个显卡插槽,号称能够支持 pcie4 * 8 + pcie4 * 8 + pcie4 * 8;再者它是 ATX 大板,空间大;相较于同系列贵300-400左右,果断在淘宝了选了一个店家下单。

等来了升级的主板后,发现电源配的显卡线不够,要命的是现在的模组化电源不同型号的电源线完全不同,又经历了一番买线-换线的曲折。
我是装机苦手。好不容易上机,点亮后发现主板VGA 灯常亮。这是什么鬼?我可是打算用这台电脑做无头服务器的。查阅了一番网络资料,大家表示不慌,无视它就好。
于是先装上 amd 7900xt,开机,改bios。
开启 above 4G 与 resize bar,关闭 gsm 启动模式,关闭开机f1错误等待等
有些玩家建议关闭 fast boot 和 secure boot,在我这张主板上并不需要
系统我选择 ubuntu server 22.04,最简单直接。ROCm 也选择了最后一版尚有官方支持的 6.3.3 版本。目前为止一切顺利。
中间又经历了好一备折腾。这张家用服务器版的x570功能有点太复杂了,太容易掉坑里了。
比如我加上了第二块m.2硬盘,它检测到了自动调整了启动引导,导致系统异常,又得手动回到 bios 给它调整回去。
它有两个网络接口,又内置了网络启动(事实上它有一个内置的 RTL8117 的类linux系统),每次调整 bios 后总会刷新网络接口的名称,导致网络连接出问题,只好将网络接口名称与接口对应的mac地址绑定。
ip a # 查看并确认网络接口名称,是否正确关联到了IP地址
# 如未关联到IP地址,则修订配置文件
sudo vim /etc/netplan/xxx.yaml # 替换为 netplan 目录下对应的 .yaml 文件
# 进一步编辑此文件
network:
version: 2
ethernets:
enp3s0: # 替换为实际的网络接口名称
match:
macaddress: "xx:xx:xx:xx:xx:xx" # 替换为实际的网络接口mac地址
dhcp4: true
optional: true一边痛斥它总给整些幺蛾子出来,一边又暗想毕竟是类服务器的主板,功能确实不错。整个过程都是求了 Gemini / ChatGPT 无数遍,又搜了好多网络资料才搞定。
可拔掉 amd 7900xt 换上 MI 50 后,ROCm 这边又出现了问题:
单张 amd 7900xt 物理硬件可识别,ROCm 可识别;
单张 amd 7900xt + 任1张 MI 50 物理硬件可识别,ROCm 可识别;
单张 MI50 或 2张 MI 50 物理硬件可识别,ROCm 不可识别。
实在令人头痛,尝试了各种各校的设置无果。冷静想想,既然单张 amd 7900xt +任 1张 MI 50 可识别,那么说明 MI 50 的硬件和 vbios 都没有问题。合理的推断应当还是 MI 50 本身作为计算卡,在这张主板上无法有效分配通道的问题。所幸这张主板有三个显卡槽,2张 MI 50 + amd 7900xt 功耗过高,看来最好的出路还是再搞一张低功耗的亮机卡了,于是我又购入了一张 RT 710 显卡。
又是漫长的等待,到手后又是一备折腾,总算顺利上机和点亮。2张 MI 50 物理硬件可识别,ROCm 可识别。

顺手锁个功耗上限。
sudo rocm-smi --setpoweroverdrive 225
硬件升级与安装到此先告一段落,接下来就是死磕软件了。