最近我把工作室的算力主力机彻底拆了重装,机箱直接扔到墙角吃灰,换成了一套自己用铝型材搭起来的开放式硬件平台。项目代号我起了个名——OpenRig。
起因特别朴素:过去一年我做本地AI模型微调和批量渲染,前前后后装了三台多卡机器。最开始用的都是那种全塔式机箱,看着挺正经,实际一跑训练任务就露馅:显卡温度蹭蹭涨,风扇噪声像飞机起飞,到了夏天哪怕开着侧板也压不住。最难受的是,只要凑到四张以上长尺寸显卡,机箱内部走线就成了走迷宫,某些卡跟卡之间的进风缝隙只有一厘米不到,后排的卡纯属靠意志力在散热。
把传统机箱换成开放式机架之后,温度直接降了十几度,硬件问题一下子好排查多了,想拆哪张卡单手就能操作。这篇文章就把完整的选址、备料、组装、跑测试过程写一遍,包括我当时忽略的一些坑。适合正在纠结要不要把塔式机箱换成OpenRig、准备自己动手搭一套多卡算力工作站的朋友。
1. 为什么OpenRig比传统机箱更适合做多卡工作站?
先说结论:当你需要长期稳定运行四块以上高功耗GPU时,传统机箱的性价比和散热效率已经开始负优化。这不是说机箱不好,而是塔式机箱从设计之初就偏向“容纳”,不是“托管”。
1.1 传统机箱拦着多卡平台的三个硬短板
第一是物理空间。市面主流全塔机箱,虽然宣传写支持E-ATX主板,但实际内部可用的横向深度和纵向高度都很有限。现在的旗舰显卡基本是又长又厚又重的三槽卡,动辄350毫米以上长度,侧插供电线还要再占用几个毫米的高度空间。插四张全高全长卡,你基本得拆掉机箱中间的硬盘笼和风扇支架,不光可玩性降低,结构刚度也跟着变差。
第二是散热气流路径。传统机箱设计要么是前进后出,要么是下进上出,风扇安装在固定位置,气流只能沿设计好的路径走。多张显卡同时发热时,前面的卡把冷空气变成热空气吹给后面的卡,后排卡核心温度会比前排高8-12度是常态,这种情况哪怕你把机箱风扇全部换猫头鹰也没用,属于物理层面的气流短路问题。
第三是维护拆装效率。训练大模型或者渲染项目卡住的时候,我需要快速换卡、重启、重置阵列,塔式机箱里电线束成一团,每次挪动显卡都要跟24Pin主板供电、模组线、风扇集线器搏斗。准确说不是难,是单纯地费手。OpenRig把所有零件暴露在外,一眼就能看出哪根线、哪块板、哪个传感器出了问题,调起来太舒服了。
1.2 OpenRig的定义边界:它不是简单“裸奔”
很多人觉得开放式机架不就是把电脑零件摊在外面吗?这个理解不准确。OpenRig的概念是把机箱结构简化成一个可扩展的工业级骨架,你买的是“固定零件”的能力,而不只是“摆放零件”的空间。
我用的是铝合金型材框架,底板和立柱之间通过角件与T型螺母连接,零件与零件之间的位置关系用型材本身的尺寸精度来保证。这种结构和传统机箱最大的区别是:所有零件都固定在可重复定位的基准面上。主板固定在专门的横梁,显卡由独立支架支撑,电源装在框架后部,风道由风扇支架线性引导。它看起来像是裸奔,实际上有自己的一套秩序,只是这套秩序是围绕“扩展性”和“可维护性”设计的。
所以OpenRig适合我这种需要频繁调整硬件的人,也适合企业搭建测试平台。如果你只是组一台游戏机,老老实实用机箱反而省心。
2. 选型与备料:OpenRig核心部件的匹配原则
开放式机架不是攒机的起点,主板、CPU、GPU这些核心算力组件才是。我的思路是先定算力目标,再倒推供电,最后才设计框架尺寸。如果你反过来先买一堆型材再想装什么,大概率会出现尺寸打架或者扩展位不够的问题。
2.1 核心平台怎么选:围绕PCIe通道数做决策
多卡OpenRig最重要的参数,不是CPU跑分多高,而是主板能拆出多少条PCIe通道。我目前用的是TRX40平台的超威主板,CPU自带128条PCIe 4.0通道,主板上有六条PCIe x16插槽,插满四张卡以后,每张卡还能跑在x16模式,完全不挤占带宽。
如果你预算有限,用消费级平台,比如英特尔Z790或AMD B650,注意这种主板大部分PCIe插槽是共享带宽的,插满四张卡可能会变成全部跑x4,训练大模型时数据传输会成为瓶颈,显卡利用率直接掉一截。另外就是注意显卡之间的物理间隔,主板插槽间距最好有三个槽位以上,否则显卡装上后挨得太近,散热器进风直接被旁边卡的背板挡住。
我的建议是,如果你打算长期玩多卡,优先选择支持PCIe拆分的工作站或服务器平台,别把预算省在主板上。主板上留下来你最多的后悔药。
2.2 GPU与电源:先算总账再选型号
显卡型号决定了电源功率数。我以当前常用的一张450W功耗显卡为例,装四张卡的理论峰值功耗就是1800W,加上CPU 350W、主板内存硬盘风扇等杂项100W,整套平台理论峰值在2250W左右。此时如果只用单电源,市面上主流1600W钛金电源其实已经超载了,瞬时功耗尖峰一旦撞上电源过流保护,系统直接重启。
我建议用两颗额定功率1200W到1600W的电源协同供电,通过双电源启动同步线把两个电源同时拉高电压。把主板和CPU放在电源A上,GPU按物理距离分散接在两个电源上,确保每个电源的输出电流都处于合理区间。这个问题后面章节细说。
选显卡时还有一个容易忽略的指标——卡的长度和厚度。OpenRig虽然是开放式结构,但不同型号的散热器外形高度差异很大。比如有的卡是中置双风扇设计,长度刚好280毫米,很省空间;而有的旗舰卡三个风扇排列,长度直接逼近350毫米,如果你的型材横梁设计得太短,装显卡时会顶到框架立柱。
2.3 一份可以直接抄的型材购买清单
框架部分我选的是欧标2020铝型材,配合M5规格的T型螺母和角件。下面是当时购买的完整清单,数值是我自己经过三张卡到六张卡多轮调整后确定的一套通用尺寸方案:
| 材料 | 规格 | 数量 | 用途 |
|---|---|---|---|
| 欧标2020铝型材 | 长480mm | 4根 | 底部横梁、顶部横梁 |
| 欧标2020铝型材 | 长380mm | 4根 | 底部纵梁、顶部纵梁 |
| 欧标2020铝型材 | 长420mm | 4根 | 立柱 |
| 欧标2020铝型材 | 长140mm | 8根 | 横撑,支撑显卡支架 |
| 三维角件 | 2020型材专用 | 24个 | 梁柱连接 |
| T型螺母 | M5 | 60+个 | 安装卡扣和支架 |
| 内六角螺栓 | M5×10mm | 60+根 | 固定角件与支架 |
| 聚四氟乙烯垫片 | M5 | 40个 | 防止金属接触短路 |
这里说下尺寸逻辑:主机板是E-ATX板型,宽度大概305mm,所以横梁取480mm,两侧留出安装角件的余量;纵梁取380mm,深度上刚好放进电源和一排长显卡;立柱420mm是算上显卡竖装垂直高度再加20mm冗余。如果你想安装360水冷排,需要把纵向深度再增加60-80mm。
主板的固定,我直接用铜柱固定在两根型材上,铜柱一端拧在型材滑槽里的T型螺母上,另一端锁主板的螺丝孔。这里最需要注意的是,型材滑槽深度和铜柱配合间隙。2020型材的槽宽是6.2mm,建议用配套的专用T型铜柱,不要拿普通机箱铜柱硬拧,拧歪了主板孔位对不准,容易刮伤PCB。
3. 手搓骨架:铝型材框架的尺寸计算与装配顺序
型材买回来只是半成品,真正开始搭框架时最核心的是基准对齐。很多人第一次装开放式机架,装完之后发现四个角不平,拧紧角件再一量对角线,误差好几毫米。原因通常只有一个:底框没在完全平整的平台上组装。
3.1 先拼底座,再立立柱
我把装框架分成三步:第一步拼底座矩形,第二步立四个立柱,第三步加横撑和显卡支架。底座矩形是整套OpenRig的基准,如果底座歪了,后面所有固定点都会跟着歪。
拼底座时,先不要把螺栓完全拧紧,全部用手带上劲,让型材之间保留一点点调整量。然后放一个大理石台面或者一块瓷砖上,用直角尺卡住每个角落,量两套对角线,直到两条对角线长度差控制在1mm以内,再用内六角扳手按对角线顺序逐渐加力。这个顺序很重要:第一颗螺丝直接拧死的话,矩形框很容易变成平行四边形。
组装顺序影响修正空间,所以不要第一颗螺丝直接拧死。
3.2 主板安装平面怎么做,才不会和显卡干涉
主板固定好后,下一个关键点是显卡支架的高度定位。因为每块显卡的挡板高度大致相同,但PCIe插槽离主板的距离因板型而异,如果显卡下方的支撑梁和主板固定梁是两根不同高度的横梁,那么只要高度差计算正确,显卡就能保持水平。
我的做法是先把一块旧显卡插到主板上,不锁挡板,让它自然悬空,把显卡尾部对齐到下方支撑梁的高度,再在梁上固定PVC显卡托架。这个托架是核心承力点,三槽重型卡加供电线后尾端下垂扭矩很大,光靠插槽锁扣根本扛不住。
多卡模式下,每张显卡的托架位置建议一一对应,不要共用一条长托架。因为不同长度显卡尾部位置不同,共用托架看起来整齐,实际会让部分显卡悬空,长期使用导致PCB弯曲。
3.3 立式还是卧式:我为什么选了卧式结构
市面上不少矿业机架是立式,显卡一块块平行插在转接板上,竖向码放。那种结构优点是占地面积小,但显卡通过PCIe延长线转接以后,如果延长线质量不过关,跑高负载时偶尔会出现WHEA报错或带宽降级的现象。我追求稳定,所以选择卧式:主板平放,显卡直接插在主板的PCIe插槽里,通过支架托住尾部,转接线少一根,故障点就少一个。
卧式结构还有个隐形好处:显卡散热器的热管方向水平,这是厂商测试时最标准的使用姿态,热管内部工质循环效率最高。如果立式安装,有些型号的热管会逆重力方向工作,热量传导效率下降几度到十几度不等。
4. 多卡供电与风道设计:稳定运行绕不开的两座山
OpenRig的散热优势是物理层面给的,但如果你不做任何规划,把六张显卡随便往架子上一插,气流照样会乱窜,部分卡还是吃别人的尾气。这个环节其实比攒机本身更考验经验规划能力。
4.1 双电源协同的接线细节与避坑点
前面说用两颗电源协同供电,实际操作有个细节:主电源和副电源之间的信号同步。最简单的方法是买现成的双电源同步启动线,但我不推荐只靠这个单纯启动线就让系统自动分配负载。最重要的是先确认供电分担关系。
我给这套OpenRig的供电分配是这样做的:
- 电源A负责主板24Pin、CPU双8Pin、系统风扇、硬盘,以及靠近主板的3号与4号显卡。
- 电源B负责距离主电源较远的1号、2号显卡和5号、6号显卡。
这样做的原因是避免把所有显卡挂到一颗电源上,一旦某颗电源过载保护,所有显卡一起掉线,训练任务直接中断。分摊到两颗电源以后,单颗电源的输出压力明显下降。
实际操作中还需要注意显卡的辅助供电接口数。例如450W显卡需要3个8Pin接口,六个接口同时从一颗电源取电,那条电源模组线的电流承受能力必须确认。我建议优先使用原生12VHPWR或原厂模组线,尽量不要用转接线。转接线在持续大电流下发热很大,手摸线材有烫手感。
4.2 风道规划:正压还是负压,风扇放哪边
很多人以为开放式机架不需要规划风道,空间到处都是孔洞,怎么都有空气。实际不是的。多卡OpenRig的热源非常密集,如果只是靠机箱风扇朝显卡吹,显卡背板反射的热风会绕回进风口,造成局部积热。
我目前在框架一侧安装了三个12公分工业风扇,把风直接对着GPU散热器气流方向吹。所有风扇统一朝一个方向工作,整体形成强制对流。进风侧不装任何遮挡物,另一侧自然流出,这样每个卡都能持续吃到新鲜冷空气。
如果金属框架设计成了前后有隔板的结构,反而要注意气流的封堵,不能让风扇吹出来的风走捷径直接回旋到进风口。OpenRig贴在墙上放的时候,安装风扇的一侧不要贴墙,留出至少10cm的进风空间。
4.3 线材整理的隐蔽作用:少挡风,多留量
开放式机架没有背线空间,线材全是明线,整理得好坏直接影响散热。电源线从电源出来以后,我选择了与型材立柱并行走线,用尼龙扎带固定在立柱背面,让电源线和数据线尽量贴着结构件走。这样显卡进风方向就几乎没有线缆遮挡。
另外一个容易被忽视的教训是:所有线材都要预留足够的应力弯折长度。因为OpenRig拆装频率高,如果线材绷得太紧,每次移动显卡时供电线的接头受力,时间久了端子会松动甚至打火。线的长度宁可多留出十厘米,盘成一个小圈挂在支架上,也不要刚刚够长。
5. 点亮前的自检清单与压力测试结果
硬件装好后,最兴奋也最容易急着开机进系统跑分。我的建议是先冷静下来过一遍自检清单,尤其是检查供电和物理固定。现在把这套我曾经踩过坑之后整理的清单放出来,照着顺序一项项看。
5.1 通电前的检查顺序
- 检查主板所有固定铜柱的螺母是否拧紧,主板背面的金属锡点有没有意外接触型材造成短路——在OpenRig开放式结构里,这个风险比传统机箱大得多。
- 检查电源电源开关全部处于关闭状态,用万用表量一下主板24Pin处的待机电压正常后再接电。
- 检查每根电源线接口卡扣是否完全扣紧,尤其是12VHPWR接口,反复按压到听到咔哒声。
- 检查显卡是否完全插到位。水平插槽在长期卧式状态不容易松脱,但插的时候要听见挡板螺丝拧紧后的“咯”一声。
- 在BIOS里关闭CSM,打开Above 4G Decoding,如果用了AMD平台,记得把Re-Size BAR设置为自动。
第一块显示输出建议直接用集成显卡或者单独一张测试卡。不要一上来就六张卡全部插上。先跑亮一台主机,确认系统稳定后再逐步插上其余显卡,每插一张都通过系统日志确认PCIe链路正常。这样如果有硬件装坏了,你能直接定位到是哪张卡。
5.2 压力测试到底看什么:温度、降频、报错
系统正常点亮后,我用Linux环境下的GPU压力测试工具跑了两小时持续高负载。测试项目包括四卡并行渲染测试和一个小规模大模型训练脚本。下面是我这套OpenRig在27度室温环境下的实测数据:
| 项目 | 待机状态 | 满载30分钟后 | 满载2小时后 |
|---|---|---|---|
| GPU核心温度 | 33-36度 | 62-68度 | 63-69度 |
| 显存温度 | 38度 | 76-82度 | 78-84度 |
| 显卡风扇转速 | 0(风扇停转) | 65%-80% | 70%-85% |
| CPU温度 | 40度 | 68度 | 69度 |
| 整机功耗 | 210W | 2250W | 2250W |
从结果看,满载两小时后显卡温度稳定在平台期,没有出现持续缓慢爬升的情况,说明风道和排热是足够的。相比之前在塔式机箱里动不动冲上80度以上,OpenRig的核心温度优势非常明显。
5.3 跑测试时遇到的两个真实暗坑
第一次跑压力测试时,随手放在支架边缘的一块机械硬盘被风扇振动影响,跑了半小时系统日志里全是I/O timeout。后来把所有还有机械结构的存储设备做了减震处理,或者干脆换固态,问题解除。机械硬盘其实不适合长时间放在高振动环境里,最好远离风扇后部。
第二个坑更隐蔽:双电源系统里,电源B的唤醒信号线碰巧接触不良,导致第一次开机主板通电但电源B完全没响应,显卡全部黑屏无输出。排查了很久才发现是两个电源启动同步线端子松了。这个问题在传统机箱里很罕见,因为机箱内部线束固定得紧。OpenRig线材裸露,移动时一定要检查同步线端子有没有松动。
6. 后续玩法:从单机OpenRig到多机组网,以及几个容易踩的隐蔽坑
OpenRig最大的价值是当你有第二台机器、第三台机器的时候,扩展几乎不用额外投入。型材框架和电源都独立,两台机器之间只需要网线连接。
6.1 多机集群怎么组网更稳
如果你同时跑好几个任务,把两台OpenRig用万兆网卡直连,跳过交换机,延迟能低不少。但注意CPU和GPU各有各的用途,组网后要用作业调度系统把任务打散到不同机器上,否则整组机器里一旦有一台网络闪断,主控节点就会一直重试,其他机器跟着空转。
我现在的做法是一台机器专门跑数据预处理,另外两台专门跑GPU负载。OpenRig的裸架结构方便交叉接线,每台机器之间共享一套键盘鼠标显示器,KVM切换靠软件实现,硬件的灵活性确实比传统机箱好太多。
6.2 长期运行时需要关注的几个细节
开放式机架最大的敌人是灰尘和异物。咖啡杯放在框架旁边,不小心碰倒,液体直接流到主板暴露面。我把机器放在工作台角落,侧面装了防尘网,但这其实降低了散热效率,需要每隔两周用气吹清理一次。
防尘和散热是矛盾关系,需要根据自己环境灰尘和通风条件来取舍。
线材老化问题也会在一年后出现,因为OpenRig的震动虽然小,但环境中长期温度变化会加速线材外皮老化。最好做到半年检查一次电源线,尤其是显卡供电线,发现外皮发硬发脆就直接换新。
最后说说隔音。OpenRig没有机箱壁板的遮挡,高频风扇噪音确实比机箱更明显。如果机器放在生活区里,建议把风扇调速曲线调低转速或者升级成静音工业扇。长期在噪声环境下工作是种损耗,完全可以在框架上下贴一些吸音棉来降低反射噪声,吸音棉要避开进风口和热源,贴了以后噪音会稍微改善。
从传统机箱换成OpenRig这套开放式平台后,我对多卡算力主机的散热焦虑明显减小了。现在拆装一张显卡的时间在两分钟以内,故障定位直接看硬件状态,不用再翻机箱内走线。如果你也需要经常折腾多卡平台,这个方向值得自己动手试试,但记得提前把尺寸、风道、供电这三个问题想清楚。