小红书FinOps实践:云成本优化与资源效率提升之道
如果无法正常显示,请先停止浏览器的去广告插件。
1. 梁啟成
2. 目录
3.
4.
5. 7+ 6+ 200+
供应商 地域 云产品
千万核级
CPU算力
万卡级
GPU算力
6.
7. 成本洞察
•
云资源成本多少,业务知不知
成本优化
•
道自己花了多少钱?
•
资源用量归属是否准确,成本
业务目标和资源动因是什么,
单位资源成本是多少?
•
是否存在供应商独家“垄断”?
•
分摊规则是否合理?
•
云产品折扣是否有下降空间,
成本运营
•
是否存在闲置资源,是否正确
云资源的开通权限是否完成收
口,是否配套资源申请流程?
•
实际资源成本相比预算计划,
配置数据存储周期以及介质? 是否符合预期,是否定期组织
有没有办法提升有效工作负载 review?
占比,充分发挥昂贵资源的超
强算力?
8. 成本洞察 Inform
成本优化 Optimize
成本运营 Operation
9.
10. • 资源归属,资源托管方并非实际使用方,资源算谁的,如何衡量各方优化做工
• 成本分摊,业务部门只收到账单金额但看不到实际用量(共享资源)
• 厂商折扣,商务合同折扣属于高度机密信息,如何让业务感知成本但屏蔽折扣
11. 目标:对外统一混合云计费账单模型,对内屏蔽折扣、提供量价对应的资源账单, 看清成本并实现精细化运营
方案收益
•
中台自持资源成本占比从
15%+ 下降到 5%
•
权责分明,采购负责商务
saving,中台技术提升效
率,业务技术优化用量
工作量代价
• 内外账金额偏差控制
• 中台产品上架管理,资源
用量上报、计费项定价与
计费出账
12.
13.
14. • CPU 利用率(峰值/均值)
• 资源使用方式(独占/共享/抢占)
• 潮汐规律(小时/天/周)
15. 内存访问延迟的差异是CPU利用率分层的关键因素,RT表现:本地访问 < 跨NUMA访问 < 跨Socket访问
VM 跨 NUMA 访问远端内存
•
•
numa node 内存使用分布不均衡,局
VM 跨 Socket 访问远端内存
•
物理资源售卖率与 VM 性能保障之间
同 Socket 下 VM 邻居相互干扰
•
相同 socket 相同 numa node 下,
部访问压力难以控制,性能不一 的取舍,内存规格越大,越容易出现 VM 邻居之间也会竞争共享内存资
大量跨 numa 访问延迟劣化整体性能 这个问题 源,负载跑得越高,竞争越为激烈
16. 定位分析内核对 CPU 利用率的抖动干扰,不改一行业务代码也能拿到数倍性能提升的“意外”收获
大量 IPI 中断导致 CPU 波动
•
业务代码没有实现内存复用,机型升
透明大页使用不当 CPU 过高
•
在机器内存碎片化严重情况下,透明
频繁 page fault 造成 RT 抖动
•
系统内存管理策略调整前,服务原来
配后进程共享核数增加,CPU 遍历大 大页开了跟没开一样并带来了额外开 CPU跑到 30% 就开始抖动,优化后
量发送 IPI 中断抢锁,性能严重退化 销,direct compact 引发抖动 可以跑到 85%,QPS提升 280%
17. VM 的内存带宽、网络带宽、磁盘 IO 等限制,均会阻碍了 CPU 利用率进一步提升
内存带宽早于 CPU 到达瓶颈
内存带宽打满触发 CPU throttle
爆发请求量超出 VM 处理能力
18. 大VM小Pod策略
•
申请大规格VM,单socket单VM,避免云底层虚
拟化黑盒不受控的问题;
•
多业务混跑,打散热点分布,降低某种资源共振
带来的使用瓶颈(CPU /网络/内存带宽);
•
通过K8s调度和内核burst能力,提升每个Pod的
弹性和容忍度,不要 VM:Pod=1:1 完全限制
死。
效果:CPU分层显著缓解,峰值利用率提升
10% +,服务Pod副本数节省 30% +,全局利
用率提升
5%
19. • GPU利用率
• GPU饱和度(MFU模型浮点运算利用率/TensorCore利用率)
• 计算类型分布(BF16/FB32/FP8……)
• 卡型用途(训练/推理)
20. 使用列存格式(Parquet)和数据湖技术存储和管理 多云统一AI训练数据集,减少冗余存储,通过近端缓
训练数据 存,优化跨云数据传输,异构介质分层管理数据
21. 策略搜索的流程
• 分析模型(模型参数,activation内存占用大小)
• 探索 ZeRO 阶段(评估所需最小内存 < 可用内存)
• 调优微批量大小、梯度累计步长
• 实验与优化(尝试不同配置组合)
• 选择最佳配置(评价指标:吞吐、延迟、FLOPS)
• 探索终止条件
• 输出最终设置
22. FP8 低精度训练加速
•
张量缩放 (Tensor Scaling),量化单位缩小至
tensor
•
通过 延迟 Scaling 高效获取 scale 值,使用
Tensor 的 amax history 来预测当前的 amax
•
选择性替换 Transformer_Engine 相关Module,
权衡性能与精度
实践:H20 部署 Qwen2 7B 模型进行 Full SFT 全
参数监督微调,FP8 性能相比 BF16 提升
23. Post-Training 阶段蒸馏
• 知识获取与知识迁移的组合
• 结合 Sequence-Level 和 Feature-Level 蒸馏
• 对教师模型的推理数据筛选过滤,与原始训练
数据共同构成新的数据集
•
除了使用序列标签外,将教师模型的输出分布
作为目标分布训练学生模型
效果:IFEval 评估通用指令跟随能力下降 2~3%,
推理性能提升
倍,成本节省
24.
25. • 多部门协同践行 FinOps,从 成本洞察、成本优化 和 成本运营 方向合理控制资源成本增长
• 成本洞察,通过商品化实现了内外账分离,看清资源使用量以及相应成本费用
• 成本优化,分享了 CPU 和 GPU 计算资源使用效率提升的实践例子
• CPU:基于大VM小Pod策略的在线混部,通过时空复用避免某种资源共振导致的抖动
• GPU:从数据、训练、压缩等方面介绍了内容大模型的降本增效实践
AI for FinOps
• AI 技术可以更好的帮我们做成本优化,AI 技术是一个非常高效的优化器(给定优化目标)
• AI 技术可以更好的帮我们做成本洞察,对成本、效能相关数据做预测和异常发现
26.
27. 大模型正在重新定义软件
Large Language Model Is Redefining The Software