智能算力方向分析

一 智能算力模型

1.1 目标是什么

明确算力决策要解决的问题,定义算力决策的目标是一切讨论的基础。直观上,大家对算力决策的期待有两种表达形式:

  • 追求收益:在算力资源的约束下,使收益最大化
  • 节省成本:在收益持平的约束下,降低算力成本
    这两种表达形式虽然在大方向上一定是正相关,但是将其应用在在衡量工作价值上时,会有一些区别。
  1. 衡量的难度:自然状态下,是因为有了算力资源的存在,所以流量才能产生收益,“算力”是“收益”的因,“收益”是“算力”的果。“算力”作为因变量,方便人为控制;反之,“收益”作为果变量,不便于控制。
  2. 工作的投入产出比:同样投入X人日进行算力决策建设,回报的是1000w/天的收入增长,还是20w/月的成本节约,这直接决定了立项的合理与否。广告业务系统的核心产出是“收益”,广告的同学最终是在为收益服务。
    因此,“在算力资源的约束下,使收益最大化”是更合理的目标。

如何长期跟踪效果

“收益持平的前提下,成本降低x%”、“成本不变的前提下,收益增长x%”这种表达形式仅仅描述了在“当前算成本-收益点位下”的工作成果。成本与收益之间的关系往往是高度非线性的。同样的策略,在成本约束为100w core时收益增长1%,可能在成本约束为1000w core时仅增涨0.1%;在收益10亿/天时节省成本1000 w/天,可能在在收益8亿/天时节省成本500 w/天。如果约束本身也是波动的,我们很难长期跟踪算力决策系统的效果。
建议在长期跟踪算力决策价值时,首先将算力约束的值长期确定下来,并在此基础上定期进行反转实验,观察收益变化。

1.2 有哪些约束

相对于理论分析,真实的广告系统有一些额外的考虑因素。

单Req时延约束

除了总算力需要满足约束以外,单个请求的算力开销也有限制,否则会导致超时。
若不考虑并行,单Req的时延约束 其实就是 单Req算力约束 的另一种体现形式。

模块资源配比约束

由于各个模块的配比未必达到最优,可能在调控时出现短板效应。
不过长期来看,模块间资源配比应该达到动态最优,因此不应该是一个强约束。

总资源约束

机器资源总量是显而易见的约束。

1.3 如何实现调控

调控分为两层:一是单请求的微观调控,实现单请求目标最大化;二是系统层面的宏观调控。实现系统的目标最大化。

微观调控

让每个请求在规定时间内完成计算,并通过下面的调控手段进行干预:

  1. 当系统处于算力不足态时,系统的算力约束为常数,收入最大化一定是ROI最大化。此时调控每个请求,使之达到约束下的ROI最大化。
  2. 当系统处于算力充足的状态时,则在时延约束内调控每个请求,使之达到约束下的收益最大化。
如何建立微观调控策略

策略分为多个子问题。

“调控策略->算力开销”模型

基于当下已有的调控点,测算各个调控Action带来的算力开销。

“调控策略->收入”模型

基于当下已有的调控点,测算各个调控Action对收入的影响。

求解微观调控策略ROI极值

max ⁡ 调控策略 ∑ i Q ( 调控策略 ) / C ( 调控策略 ) s.t. 单 R e q 时延约束 系统约束 \begin{align} \begin{split} \max_{调控策略} & \sum_{i} Q(调控策略)/C(调控策略)\\ \text{s.t.} & 单Req时延约束 \\ & 系统约束 \end{split} \end{align} 调控策略maxs.t.iQ(调控策略)/C(调控策略)Req时延约束系统约束

宏观调控

  1. 当系统处于算力不足态时,系统的算力约束为常数,ROI最大化一定是收益最大化。基本策略是:
    a. 系统ROI最大化:若某个Req的预估ROI低于当前系统的平均ROI,则丢弃这一请求
    b. 随着平均ROI提升,系统会丢掉更多的请求,最终进入“算力充足态”
  2. 当系统处于算力充足的状态时,则在时延约束内最大化收益
    a. 系统收益最大化:丢弃收益低于算力成本的请求
    b. 随着更多请求进入,系统进入“算力不足态”
  3. 通过一定方式,使在两种目标策略中平滑切换

上述宏观调控模型忽略了各模块间资源可能不匹配的现状。虽然长期不匹配问题不会存在,但是短期仍需考虑其实际影响。如考虑不匹配因素,则“算力充足/不足态”是一个局部概念,无法简单的做判断。
为了解决这个问题,可能需要对系统状态进行embedding,在求解单Req ROI最大化时,需要考虑系统约束。
系统约束可能包含各模块SLO、时延、集群CPU/网卡/内存负载等。

算力工程

建立算力开销统计能力

建立CPU、GPU、带宽、内存开销度量体系。

建立决策数据采样体系

请求/系统粒度采样决策内容、算力开销、系统状态、广告收入等内容。

建立在线决策工程体系

基于当前策略需要设计完善的在线决策工程体系。

二 业界进展

2.1 技术演进过程

  1. 单调控点、单维度(队列长度)建模,二分法求解
    阿里妈妈DCAF:https://arxiv.org/pdf/2006.09684.pdf
  2. 多维度调控(队列 + 模型),二分法求解
    美团全链路调控:https://mp.weixin.qq.com/s/iUlKGEN1sFyyVvOzBO34wA
  3. 多调控点建模
    a. 线性规划求解
    阿里CRAS:https://arxiv.org/pdf/2103.02259.pdf:预排、粗排和精排队列联合优化的联合最优算力分配
    b. 进化算法求解
    美团CEM:https://mp.weixin.qq.com/s/yEdrP4xmzOQs6jfXoCBJzw:各阶段强约束(超时时间)
    c. 强化学习求解
    美团RL:https://dl.acm.org/doi/pdf/10.1145/3543507.3583313
  4. 快手最新论文(未阅读)
    https://dl.acm.org/doi/pdf/10.1145/3539618.3591696

2.2 阿里妈妈建设思路梗概

  • 工程体系建设:价值预估、算力预估、算力决策三个子问题
  • 流量过剩、流量不足是两个策略,根据潮汐切换
  • 离线求解
  • 主场景未做到流量个性化,只做了场景个性化;小场景做了流量丢弃、多调控点调控(独立DCAF)
  • 流量个性化与算法目标冲突
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值