Dailychained PLX 88096 交换机,四路 RTX 5070 Ti + 四路 RTX 5060 Ti
摘要
一位用户分享了使用 RTX 5070 Ti 和 5060 Ti 构建多 GPU 系统的经验,该系统用于在 Linux 上通过 vLLM 运行 Qwen3.8-27B-FP8 等 AI 模型,详细介绍了硬件设置、基准测试和挑战。
左侧:四路 RTX 5060 Ti,中间:四路 RTX 5070 Ti,两者均使用 PLX 88096 交换机,右侧 = 重新安置的主机
编辑:基准测试之前是一行 = 已修复
原因:-->> 数据主权 / 隐私 <<--
嘿,这是(localllama 对吧?),这和我花同样的钱买一辆我想要但不需要的摩托车一样不合理,所以没有 Triumph Rocket III 摩托车给我,呜呜,是给小型办公室/家庭办公室的。
总之,这是一段旅程,浪费了几百美元在不合适的电源适配器/PCI 转接器上,还有 RTX 50xx GPU 上的一小笔钱,这些最终会过时。
现在我仍然深陷于学习使用 Linux / docker / vllm / 模型 / 设置客户端的学习曲线中(我从 Win 3.1 开始就是 Windows 用户)。我还没有重新爱上 CLI(自从 80 年代的 ICL/IBM MFs 以来没有过)。
所有设置都已运行,vLLM NCCL 消息报告每个节点内启用了 P2P(尚未解决跨节点 P2P)。还需要一些冷却工作(更多风扇即将到来)/ 最佳方向等。
我预计这些会使用一段时间,所以没有松散的挖矿框架等。每个节点都是独立构建的硬件(原型质量,这里那里有些粗糙边缘),如果我能获得 GPU,就再建一个(我有备用的 V21 机箱 + 88096 PCB)。
注意我在新西兰,所以本地只能买到常规基础 PC 部件,几乎所有其他东西都是海外进口,例如即使 Thermalrake Core V21 机箱也必须从澳大利亚运来,大多数其他东西来自中国,2-4 周的运输,如果电缆或适配器不工作,会有更多延迟,我在边境支付 15% 的销售税。
另外这些机箱的派对技巧是它们可以垂直螺栓安装,所以假设我能管理上升的热量,那个选项在桌面上节省一点空间。
GPU 是混合品牌/型号,几个我已经有了,我逐步(每个本地卖家是‘每位客户 1 块 GPU’)最初为这个构建收集了 8 块 RTX 5060 Ti,但在我拿到第 5 块时,5060 Ti 16GB 和 5070 Ti 16GB 之间的价格差异变得足够接近,我退回了那第 5 块,增加了 3 块 RTX 5070 Ti 16GB 到我已经有的一个。
注意这里真的没有成本效益高的二手 GPU 市场,所以我只能买到 1 块二手 5060 Ti,我只付了他 2025 年 11 月他购买时的价格加 NZ$150 ;)(对他来说不错,但即使在这个加价下,它仍然是一个得分)。
也期待着让 3.8 Flash Next 工作,希望它是可用的。
基准测试
下面是每个节点的运行命令
Ubuntu 24.04, NVidia 575.something, CUDA 13.2
vllm 0.30 - 这样你可以看到启用了什么(你是正确的,谢谢你注意,是的我确实在软件方面不知道我在做什么,我只是一个非常老的脚本小子)没有 spec decode 等以保持可重复性
docker run --rm -it \
--name vllm-node1x4 \
--ipc=host \
--gpus '"device=GPU-dd49c72c-4273-9016-aaad-8883c553b0da,GPU-1ef97316-f1c1-3c15-64db-fbd6373179e5,GPU-ab8220cb-5ab1-82a6-8aec-26454657e215,GPU-6ce2d880-240f-18be-ffe0-96ab3d0eede8"' \
-e NCCL_DEBUG=INFO \
-e NCCL_P2P_DISABLE=0 \
-e NCCL_P2P_LEVEL=SYS \
-e VLLM_SKIP_P2P_CHECK=1 \
-e NCCL_BUFFSIZE=16777216 \
-e NCCL_MIN_NCHANNELS=8 \
-v /mnt/ai-assets/huggingface:/root/.cache/huggingface \
-v /mnt/ai-assets/vllm-cache:/root/.cache/vllm \
-v /mnt/ai-assets/models:/models:ro \
-p 8005:8005 \
vllm/vllm-openai:latest \
/models/Qwen/Qwen3.8-27B-FP8 \
--served-model-name qwen3.8-27b-fp8 \
--quantization fp8 \
--tensor-parallel-size 4 \
--max-model-len 65536 \
--max-num-seqs 10 \
--gpu-memory-utilization 0.85 \
--kv-cache-dtype auto \
--host 0.0.0.0 --port 8005
测试命令
llama-benchy \
--base-url http://localhost:8005/v1 \
--model qwen3.8-27b-fp8 \
--tokenizer /models/Qwen/Qwen3.8-27B-FP8 \
--depth 0 4096 8192 16384 32768 \
--latency-mode generation
结果
- 无超频/欠压等 GPU 默认设置(待办:NVOC 超频 VRAM)
- 看起来非常线性,基本上是 2:1
- 结果似乎可以
四路 RTX 5070 Ti 16GB
| 模型 | 测试 | t/s | 峰值 t/s | ttfr (ms) | 估算 ppt (ms) | 端到端 ttft (ms) |
|:----------------|----------------:|---------------:|-------------:|---------------:|---------------:|----------------:|
| qwen3.8-27b-fp8 | pp2048 | 6488.44 ± 3.99 | | 363.10 ± 0.19 | 315.79 ± 0.19 | 363.10 ± 0.19 |
| qwen3.8-27b-fp8 | tg32 | 82.21 ± 0.06 | 84.86 ± 0.06 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d4096 | 5831.49 ± 4.69 | | 1100.96 ± 0.70 | 1053.65 ± 0.70 | 1100.96 ± 0.70 |
| qwen3.8-27b-fp8 | tg32 @ d4096 | 81.56 ± 0.09 | 84.19 ± 0.09 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d8192 | 5642.19 ± 3.35 | | 1862.27 ± 1.10 | 1814.96 ± 1.10 | 1862.27 ± 1.10 |
| qwen3.8-27b-fp8 | tg32 @ d8192 | 81.00 ± 0.01 | 83.61 ± 0.01 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d16384 | 5431.23 ± 5.45 | | 3441.21 ± 3.25 | 3393.89 ± 3.25 | 3442.26 ± 3.26 |
| qwen3.8-27b-fp8 | tg32 @ d16384 | 80.63 ± 0.14 | 83.23 ± 0.14 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d32768 | 5059.44 ± 0.49 | | 6928.84 ± 0.58 | 6881.52 ± 0.58 | 6929.81 ± 1.32 |
| qwen3.8-27b-fp8 | tg32 @ d32768 | 79.43 ± 0.26 | 81.99 ± 0.27 | | | | |
四路 RTX 5060 Ti 16GB
| 模型 | 测试 | t/s | 峰值 t/s | ttfr (ms) | 估算 ppt (ms) | 端到端 ttft (ms) |
|:----------------|----------------:|---------------:|-------------:|----------------:|----------------:|----------------:|
| qwen3.8-27b-fp8 | pp2048 | 3218.53 ± 1.05 | | 689.86 ± 0.35 | 636.52 ± 0.35 | 689.86 ± 0.35 |
| qwen3.8-27b-fp8 | tg32 | 43.35 ± 0.02 | 44.74 ± 0.02 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d4096 | 3005.17 ± 0.55 | | 2097.92 ± 0.37 | 2044.59 ± 0.37 | 2097.92 ± 0.37 |
| qwen3.8-27b-fp8 | tg32 @ d4096 | 42.85 ± 0.01 | 44.23 ± 0.01 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d8192 | 2927.62 ± 1.87 | | 3551.28 ± 2.59 | 3497.95 ± 2.59 | 3551.28 ± 2.59 |
| qwen3.8-27b-fp8 | tg32 @ d8192 | 42.66 ± 0.06 | 44.03 ± 0.06 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d16384 | 2821.32 ± 1.44 | | 6586.68 ± 3.60 | 6533.34 ± 3.60 | 6587.62 ± 3.66 |
| qwen3.8-27b-fp8 | tg32 @ d16384 | 42.25 ± 0.05 | 43.61 ± 0.05 | | | | |
| qwen3.8-27b-fp8 | pp2048 @ d32768 | 2654.29 ± 0.46 | | 13170.73 ± 2.42 | 13117.40 ± 2.42 | 13171.73 ± 2.56 |
| qwen3.8-27b-fp8 | tg32 @ d32768 | 41.30 ± 0.07 | 42.63 ± 0.07 | | | | |
---
我的计划或多或少是之前定的,硬件笔记几乎是最新的。
我针对 128GB/全 Blackwell 的理由:
- 128GB = DGX Spark, RTX Spark 和 Strix 128GB AIOs,所以会相关几年
- 全 Blackwell = FP8 现在快,NVFP4 一旦成熟/生产就绪可能更快?(2026 年底?)
- 希望明显快于比如 DGX Spark
- 需要 192GB VRAM?:
-- 构建另一个节点等(假设 RTX GPU 仍然与 AI 推理相关,有一天二手会 < $$)
- 如果不是,更容易出售 1 个节点(或最坏情况每个节点 4 块 GPU 单独)而不是 1 块单体 DGX Spark 或任何东西,一旦未来神奇 AI 执行芯片存在
我针对 PEX 88096 背板的理由:
- 在每个节点内 GPU P2P 与修补的 Nvidia 驱动程序在 Linux 上
- 最大化(相对于节点1)受限的 RTX 5060 Ti 16GB PCIe x8 的能力
- 后端例如 vLLM 使用 TP=4, PP=2 以最大化架构
- PCIe4 = 更少带宽但是:
-- 非常非常宽容于干扰
-- 比任何 PCIe5 便宜得多
-- NVidia p2pbandwidthlatencytest 显示每个交换机内 GPU P2P 延迟 < 1us
每个节点
- 模块化/独立,只需将备用 SFF-8654 PCI 主机卡放入任何 PC 即可开始
AI LLM 推理层级
- <= 64GB
-- 性能/生产层级:节点1(GPU 0-3):vLLM TP=4 = 快
-- 实验/第二模型层级:节点2(GPU 0-3):vLLM TP=4:足够快??
- > 64GB 和 <= 128GB = 节点1 + 节点2:容量层级:
-- 节点1(GPU 0-3)+ 节点2(GPU 0-3):vLLM TP=4 PP=2:受限于最佳节点2速度,足够好?
- 其他:
-- 主机 RTX 5080:嵌入例如 Qwen3-VL-Embedding-8B 等
-- 节点2 GPU4 RTX 3080:语音转文本/文本转语音等
主机 GPU RTX 5080
- 用于独立实用程序例如嵌入 / 视觉 / Spec 解码等
主机(主机 128GB DDR5-6000)
- Ryzen 5 9600X
- MSI MPG B850 Edge TI WiFi
- Jonsbo D41 Mesh Black
- XPG Core Reactor II VE 850W
- 仅 iGPU 连接显示器
- 每个 WIN / Linux OS 使用 SATA SSD
- Gen5 M2 SSD 在 PCI 上
相似文章
@leopardracer: https://x.com/leopardracer/status/2055341758523883631
一位用户分享了他们搭建双GPU本地AI实验室的经验,使用了RTX 4080 Super和5060 Ti,通过llama.cpp和llama-swap运行Qwen 3.6模型,以降低API成本并实现无限制的实验。
两块旧款RTX 2080 Ti,每块22GB显存,运行Qwen3.6 27B,使用f16 KV缓存达到38 token/s
一位用户分享其配置:使用两块改装版RTX 2080 Ti GPU(每块22GB显存)通过llama.cpp以38 token/s运行Qwen 3.6 27B,并包含关于功耗限制、张量分割模式和KV缓存设置的技巧。
2 x 5070ti Qwen 27B 完整配置/统计
技术帖分享了在 2x RTX 5070 Ti GPU 上使用 vLLM cu129-nightly 运行 Qwen 27B 的性能数据,解码速度最高可达 94-87 tps,GPU KV 缓存达 170k。
club-5060ti: 实用的RTX 5060 Ti本地LLM笔记与配置
一个GitHub仓库,提供在双RTX 5060 Ti 16GB显卡上使用vLLM和llama.cpp运行本地LLM(如Qwen3.6 27B)的实用配置和基准测试。
4090 + 5060 Ti + 64GB RAM:35B-A3B 达 206 t/s,122B 达 37 t/s
一位用户分享了在双 GPU(RTX 4090 和 RTX 5060 Ti)上运行大语言模型(Qwen 27B-122B)的基准测试结果,实现了极高的 token 生成速度(例如 35B-A3B 达到 206 t/s,122B 达到 37-41 t/s)。帖子包含配置详情以及指向 GitHub 仓库的链接,其中包含脚本和原始数据。