| 差距来自哪里 | 占多少时间 | 能不能解决 | 怎么解决 |
|---|---|---|---|
| 显存不够,被迫开省显存开关 | 约 10 分钟 (24%) | 能 | 换大显存型号即可去掉 |
| 一次性的编译预热 | 约 6.5 分钟 (16%) | 能 | 只在第一轮发生,之后不再有 |
| 硬盘读数据慢 | 约 5 分钟 (12%) | 能 | 换全闪存储 |
| 真正的算力差距 | 约 1.75 分钟 (4%) | 不能 | 这才是芯片本身的差别 |
| 其余系统开销 | 约 18 分钟 (43%) | 待查 | 我们还没查清,如实标出来 |
三台里算得最快——算力优势是真实存在的。
用的是老式机械硬盘。光等数据就等掉了大半优势。
对比另一台配全闪的机器只要 40 分钟,慢了 2.7 倍。
另一位老师带来自己写的模型,在某国产芯片上跑了一小时后崩了,报显存不足。
这时候最容易下的结论是:"国产卡不行。"
我们没这么说,而是去算了一下它到底要多少显存——
这个数字超出任何现有单卡。某国产芯片 64 GB 装不下,
那张顶配的 GPU 96 GB 同样装不下。
根因是模型架构本身——它的注意力机制要处理 30 万个位置,开销按平方增长。换什么卡都救不了。
业内有个叫 Mamba 的新架构,开销随规模线性增长,正好治这个病。 但它的官方实现依赖 GPU 专用底层算子——业界普遍认为国产卡跑不了 Mamba。
我们绕开了:用通用框架自己实现一遍,不依赖任何专用算子。在某国产芯片上开箱即跑。
| 显存占用 | 不到 10 GB |
| 单步耗时 | 43 秒 → 3.7 秒(优化后快 11 倍) |
| 10 轮总耗时 | 约 31 分钟 |
| 训练效果 | 损失单调下降、未过拟合 |
客户内网装不了任何软件包。我们把 29 个依赖包离线打成 101 MB 的包带进去,
还自建了一个分片续传的上传通道。
贵司的网络只会比这更严格,这条经验直接能用。
那台机器上,5 张卡在跑着生产服务,我们训练只用剩下的 3 张,全程锁死。
整个测试期间,生产服务一次没受影响。
这是我们所有项目的第一条红线。
从进口卡迁到某国产芯片会踩的坑,我们写成了一份 11 章的避坑指南,
含 8 个常见报错的速查和 10 条不许碰的红线。
换个行业的软件清单,就能直接给下一家用。
这不是我们估的,是从客户自己的数据库里查出来的周平均值。而且还在恶化—— 6 月中旬还是 22.8 秒,下旬就到了 54.8 秒。历史最慢一次 362 秒,等六分钟。
首次提问还要额外等半分钟到一分钟。
结论:这不是"AI 不好用",是这台机器从来没被真正启动过。
| 卡号 | 干什么 | 怎么配 | 给谁用 |
|---|---|---|---|
| 0 · 1 · 2 · 3 | 主力问答 | 四张卡合起来跑主力模型,关掉"先想再答",直接给结论 | 日常查资料 |
| 4 | 编程助手 | 一个单卡放得下的编程模型 | 写代码 |
| 5 | 检索 + 排序 | 把"找得准"这件事也放到显卡上做 | 提升准确率 |
| 6 · 7 | 长文专用 | 两张卡跑长文档版本,不用时可以关掉 | 整篇文档分析 |
把"能读长文"这个能力硬塞进主力,会拖累占绝大多数的日常短问答。拆开跑,互不影响。
原计划上更大的 72B,查证后发现 某国产大模型 这个系列根本没有 72B;而 32B 的官方成绩已经接近上一代 72B。改用 32B 后单卡就放得下。
官方工具单线程只有 0.36 MB/s。换多线程拉到 5.5 MB/s(约 15 倍),基本吃满客户带宽——客户链路上限就 7.5 MB/s,不是网变快了。
| 问一个问题 | 54.8 秒 | → 约 4 秒 |
| 显卡利用 | 8 卡全闲 | → 8 卡全载 |
| 首次提问 | 30–60 秒 | → 不用等了 |
另外两件超出体检范围的交付:
▸ 4 个部门各自的知识库,员工登录只看得到本部门的,越权调用实测被拦住(目前用本地账号测试);域控对接已预留,参数到位就生效
▸ AI 运维助手,管理员用大白话就能查显卡、查服务、查日志
规则不在提示词里,在服务端代码里——不是靠模型"自觉",是它根本调不到那个接口。
这条是有教训的:早期把安全规则写在提示词里,换个模型就失效过。
这类模型运行时要去查一份"针对你这张卡的调优参数表"。 社区里没人发过这个 GPU 型号的——查不到就用通用的兜底值: 卡插在那儿只干约 23% 的活,而且不报错。
自己跑一遍调优:单卡试了 18 种批量大小 × 1920 组参数, 耗时 5 小时 20 分,产出这一个 3.3 KB 的文件。装进去、重启,就完事了。
此前这个模型在这张卡上偶发无声崩溃(进程直接没了、一句报错都没有)。装上后连续 25 分钟零重启零错误—— 崩溃根因大概率就是缺这份配置。
模型只部署在一张卡上,上下文也只开到 8K。另外七张卡完全空闲。
给八张卡排了个班:四张一组、分成两组,各自独立接活。改一行配置、重启服务,5 分钟。
这批卡彼此之间的通道比较窄。八张硬凑一组,光是互相商量就把好处吃掉了——实测 1139,反而比"四张一组开两组"的 1714 低了三分之一。
开机只认到 7 张卡,不是 8 张。RAID 卡驱动折腾了约 5 小时。
系统镜像走错了传输路线,白白浪费 6 小时。
——第一天基本没干成正事。
三个模型 × 各种卡数组合 × 各种并发量,共 34 组计划:26 组通过,8 组没跑通
(一个模型在 4 卡 / 8 卡下启动就崩,至今没解决);另有 12 个长输入测试点因压测工具自身超时全部作废。
——通过的那 26 组,就是前面那张排班表的来源。
全程满载,一刻没停
没有降频、没有掉卡、没有报错、没有温度告警
整机峰值 3196 W,电源额定 12800 W,余量还有四分之三
八张卡只认到七张;RAID 卡驱动耗掉一个上午;管理接口报"配置成功"其实根本没配上,最后只能进 BIOS 手工做。
→ 现在我们的做法:驱动提前一天问现货,系统镜像走管理口直挂,30 秒搞定。
这卡在系统里不是普通显卡的身份——常规排查命令一条都查不到它,工具名字也全不一样。
按 GPU 或者 某主流芯片 的路数去排查,全程都在找错地方。
→ 我们把 8 类常见报错整理成了速查表。
照搬 GPU 的显存参数直接爆显存;有个加速开关一打开就偶发乱码,只能关掉换稳定,代价是慢 10–20%;
有些参数设错了不报错,等真跑长文时才悄悄出问题。
→ 九个坑写成了一页速查卡,在附页。
模型跑起来只是一半,上面还要搭应用。光是应用平台那一层的四个坑就多花了约 8 小时,
端到端从八项全不通,修到八项全通。
→ 大模型下载还必须逐个校验文件大小,否则损坏了要等加载时才报错。
这四条的共同点:结构性的,消除不掉,但都能绕。而且绕的方式全是改配置,不用换硬件、不用改模型。
| 路线 | 什么情况下用 | 怎么做 | 成熟度 |
|---|---|---|---|
| A | 能联网 | 客户机器主动往外拨连回我方工作台。不需要开放任何入站端口、不改防火墙,只连管理网段,业务流量不受影响。 控制权在贵司手上,随时可以单方面切断。 | ✓ 已实战跑通 故事二那家客户 |
| B | 隔离网 内网已有模型 |
把整套环境封装成一个镜像摆渡进场,附逐个文件的校验清单配合贵司扫毒审批; 镜像里主动删掉所有远程工具,没有任何能连出去的东西。产出带出内网前先经贵司签字。 | 物料已验证 客户现场尚未落地 |
| C | 隔离网 内网没有模型 |
把算力一体机连同环境一起送进场,先用后买,数据全部留在贵司本地。 | 设备就绪 尚未首次进场 |
① 不重写贵司的生产系统
② 不让模型去硬判规范、质量、安全的结论
③ 真实数据进场前,先签脱敏边界
先只读体检 → 拿到书面许可再动手 → 所有改动可回退 → 交付后主动拆除通道不留后门、全部改密移交
| 客户 / 项目 | 做了什么 | 硬成果 | 状态 |
|---|---|---|---|
| 某省级气象部门 某国产芯片 国产AI加速卡 |
自研气象模型从进口卡迁到某国产芯片;替客户解决模型跑不动的架构问题 | 同模型比 进口 GPU 机器快 24%;差距拆解证明仅 4% 是真算力差;业界认为跑不了的 Mamba 在某国产芯片上跑通 | PoC 实测 未书面验收 |
| 某国产芯片 8 卡整机 国产化算力 |
4 天完成硬件、性能、稳定性三层实测 | 149 → 1714(同机调参);8 小时满载零故障;26 组测试全通过 | 借测样机 PoC 后随机移交 |
| 某制造企业 8× 某 GPU 型号 |
零破坏隔离新建一套推理系统,旧系统原封未动 | 问答 54.8 秒 → 约 4 秒;显卡 8 卡全闲 → 8 卡全载;4 部门分权实测隔离通过 | 已交付 |
| 某半导体企业 半导体 · 某市 |
数据资产化:真备份 + 备份日志入知识库,一个入口同时答业务与合规问题 | 知识库打靶 5/5 全命中且跨双库检索;1842 文件 / 443 份 PDF;A 级验收 | 独立复核通过 |
| 某半导体企业 · 运维 AI 线 半导体 · 隔离网 |
提出受控开发区方案(依据等保三级"开发与运行环境分开"),配套标准镜像 | 镜像开箱自检 95 项 94 通过;底座 65/65 全绿;离线库 919 MB / 118 个依赖包 | 物料就绪 现场未落地 |
| 省妇保 三甲医疗 |
病理切片存储 + AI 辅助阅片 | 1.6 GB 超大切片秒开(0.06 秒);单次检出 6470 个细胞核,显卡利用率 0 → 84% | 端到端验证通过 |
| 中国铁塔 通信基础设施 |
集群时间同步事故:先建实验环境真机复现,再给处置方案 | 全流程 90 分钟闭环(传统需 2.5–5 天);实测单台猛调时钟 → 100% 数据分片不可用 | 已交付三件套 |
在贵司现有的某国产芯片机器上,做一次同条件基线测试,
出一份和今天同规格的报告。
先看清楚手上这批卡现在实际跑在什么水位——是卡的问题,还是配法的问题,还是硬盘的问题。
不改配置、不动生产、只读采集。
| 几张卡一组 \ 并发 | 4 | 16 | 64 | 结论 |
|---|---|---|---|---|
| 1 张 | 55 | 185 | 160 | 基准 |
| 2 张 | 55 | 187 | 160 | 完全没有提升——通信开销吃光收益 |
| 4 张 | 192 | 556 | 857 | 真扩展:并发 16 时 3.0×,并发 64 时 5.4× |
| 8 张 | 201 | 702 | 1139 | 比 4 张只多 26–33%,边际递减 |
56 条链路差异 < 0.1%,完全均衡无弱链路。卡间不是瓶颈。
最低/最高 = 仅 65%。同一台机器,取决于落在哪个 NUMA 节点。
双路 Hygon C86-4G 共 8 个 NUMA 节点,距离从 20 到 58,差约 3 倍。最远的是 CPU5。
规则:4 张以内优先同 NUMA 组 + 绑核。
| 场景 | GPU 常用 | 某国产芯片 实测安全线 |
|---|---|---|
| 单模型独占 | 0.90 – 0.95 | 0.85 |
| 长上下文 | — | 0.80 |
| 高并发 | — | 0.75 |
| 同卡多任务 | — | 0.70 |
| 项目 | 实测值 | 说明 |
|---|---|---|
| FP16 单卡峰值 | 260.2 TFLOPS | 4K 矩阵实测。厂商资料给的标称值明显偏保守,实测远高于标称——所以别只看 spec,自己跑一遍 |
| FP16 8 卡合计 | 2069.9 TFLOPS | ≈ 2 PFLOPS |
| BF16 / INT8 单卡 | 276.4 / 280.2 TFLOPS | INT8 为 fp16 fallback |
| 卡间 D2D | 50.06 GB/s | 56 条链路差异 < 0.1% |
| 显存内部带宽 | 882.32 GB/s | HBM2e 理论 819,达成率 107%(含突发) |
| 主机 → 卡 | 37.52 GB/s | 64 种组合差异 < 3% |
| 卡 → 主机 | 23.36 – 35.85 GB/s | min/peak = 65%,跨 NUMA 不均 |
| 单卡功耗墙 | 400.0 W | 实测限额 400W,非资料所写 350W |
| 健康度 | 0 ECC / 0 掉线 | 3224 个时序采样,温度 36–73 ℃ |
| 配置 | c=4 | c=16 | c=64 | 备注 |
|---|---|---|---|---|
| 某国产大模型 (in=512) | ||||
| TP=1 | 55 | 185 | 160 | in=2048 时 36 / 63 / 72 |
| TP=2 | 55 | 187 | 160 | 与 TP=1 持平 |
| TP=4 | 192 | 556 | 857 | in=2048: 178 / 531 / 781 |
| TP=8 | 201 | 702 | 1139 | in=2048: 187 / 675 / 1086 |
| 某国产视觉大模型 | ||||
| TP=2 | — | 110 | — | 权重约 80 GB,单卡装不下 |
| TP=4 | — | 247 | — | |
| TP=8 | — | 301 | — | in=2048 时 307,比 TP=4 高 24% |
| 推理模型-某国产大模型 FP16 | ||||
| TP=2 | — | 153 | — | in=2048;in=8192 时降到 83 |
| TP=4 / TP=8 | 推理引擎 启动 crash | 8 组 plan 全 SKIP,至今未解 | ||
HIP_VISIBLE_DEVICES,不是 GPU 加速_VISIBLE_DEVICES--gpu-memory-utilization 0.85(0.95 必 OOM)--enforce-eager(HIP Graph 有 corner case)--shm-size=16g(Docker 默认 64MB 起不来多卡)--trust-remote-code(否则 KeyError)--quantization 量化(量化 不自动检测)-e MODELSCOPE_DOMAIN(默认走外网,隔离网必挂)nsys → hipprof --hip-tracencu → hipprof --pmccuda-gdb → hipgdbnccl-tests → rccl-testslspci | grep -i amd 返空 —— 驱动是 hycu 模块 + 某国产芯片自有 vendor ID,不是 amdgpududiag 3,1800 双压 30 分钟/dudiag 5 卡间带宽/dudiag 7 GEMM。
峰值 GEMM ≥ 标称 95% 才算合格,< 90% 直接报修。
单卡约 290 秒(含编译 102 秒,重启后 90–120 秒);8 卡加载实测 223 秒。
服务启动后等 5 分钟再做健康检查。
| 指标 | 客户业务机 进口 GPU 80GB + 机械硬盘 | 某国产芯片 国产AI加速卡 8 × 64GB | 对照机 某高端进口显卡 96GB |
|---|---|---|---|
| 总耗时 | 107.10 分钟 | 81.40 分钟 | 39.84 分钟 |
| 平均每轮 | 3.57 分钟 | 2.71 分钟 | 1.33 分钟 |
| 数据读取 / 批 | 0.55 s | 0.4943 s | 0.09 s |
| 前向 / 批 | 0.25 s | 0.3570 s | 0.22 s |
| 反向 / 批 | 1.07 s | 2.3865 s 含重算 | 1.59 s |
| 单批总计 | 1.87 s | 3.2378 s | 1.90 s |
单卡显存少 32 GB → 不开省显存开关时峰值约 62 GB 直接 OOM,开了之后稳在 55 GB(86%)。 代价:反向 +25%,精度损失为零。改动量:1 行 import + 6 行包装,仅 1 个文件。
第 1 轮 429 秒(一次性编译),第 2 轮起稳定在 152–155 秒。
功耗 245–251 W(TDP 400W),卡温 62–76 ℃,训练时利用率持续 100%。
客户自研模型需 5449 GB 显存(注意力 30 万 token,平方复杂度)——任何单卡都装不下。
改纯框架实现的 Mamba:0.84M 参数、<10 GB 显存,单步 43 s → 3.7 s,10 轮约 31 分钟,验证损失 0.1225 → 0.1112。
| 并发 | 1 | 8 | 32 | 64 | 128 |
|---|---|---|---|---|---|
| 吞吐 tok/s | 100.7 | 661.8 | 2614.3 | 3224.1 | 5976.7 |
| 首字延迟 | 37 ms | 59 ms | 96 ms | 133 ms | 240 ms |
| 成功率 | 100% | 100% | 100% | 100% | 100% |
全程 420 次请求,0 失败;单卡开 fp8 KV 真跑满 256K 上下文(约 25 万字)。
换 IP、换模型名即测。GPU 厂商、服务端口、可用模型全部现场探测,不预设。
压测在目标主机本地跑,结果解读走该主机本地模型,全程不跨网、不出厂。