在网计算(NACA)技术白皮书解读 中国移动陆璐 2023年8月 中国移动充分发把握算力时代发展脉络,以网强算提出“算力网络”全新理念,两年多来持续开拓创新,全力推进算力网络发展,形成一系列创新成果,在业界取得了广泛共识,引起了巨大反响 算力网络的发展经过三个阶段的发展,逐渐深化 起步阶段:泛在协同发展阶段:融合统一跨越阶段:一体内生 运营服务 编排管理基础设施 一站服务:一站开通算网服务协同运营:云网运营双入口拉通 协同编排网随算动 融合服务:产品融合、确定性服务统一运营:统一入口、统一平台 智能编排算网融合 一体服务:多层次智简无感服务模式创新:多方算力可信交易 智慧内生算网一体 2025~ 十五五阶段及更长期 2021-2023 十四五阶段 2024-2025 3 算网一体通过“联合感知”“混合控制”“极致互联”构建面向智能化时代的数字基础设施 架构关键技术 联合感知 混合控制 网络信息 拓扑信息 拥塞状态 算力信息 CPU利用率 异构算力 前提 集中式控制 分布式控制 SLA指标 算力规模 消费侧 节点1节点2节点4 任务分解与调配 节点3 创新互联网架构协议,基于算网资源 算力路由在网计算 联合感知实现动态融合决策选路 网络内生算力,基于集中式控制,实现计算任务跨云、网、边、端分布式协同 支撑作用 广域RDMA 突破RDMA长距传输瓶颈,实现广域高性能互联 极致互联 ISP1 •ISP:网络服务提供者; CSP:算力服务提供者 CSP4 CSP3 CSP2 CSP1 ISP2 算网数字孪生基于网络大模型的算网数字孪生构建可视、 可管、可控的算网基础设施 4 在网计算主要面向分布式应用,随着分布式系统规模不断扩大,计算节点间的通信量激增, 通信模式更加复杂,通信开销已成为AI、大数据、HPC等分布式应用的性能瓶颈,严重制约系统规模扩展 分布式应用场景 模型训练时长分布[1] 计算时间每轮迭代总时间 分布式训练管道中模型训练时间分解[1] 不同模型在进行分布式训练时,各阶段的时间分布不同ResNet269的通信时间最长,且还有较长的Aggregator,AlexNet还具有较长的Synchronization,等等 •采用8个workers和8个PSs的网络训练AlexNet模型,网络通信时间占比可高达80%以上 •面向AI场景的网络优化需要更细粒度的通信算子优化方案 需要尽可能压缩通信的时延占比,同时结合不同类型的通信过程优化分布式系统通信性能 [1]ParameterHub:aRack-ScaleParameterServerforDistributedDeepNeuralNetworkTraining,https://dl.acm.org/doi/10.1145/3267809.3267840 5 衡量分布式应用通信性能的重要指标是任务完成时间,负载均衡策略、 计算节点多打一现象以及物理与逻辑通信模式不匹配等因素引发通信瓶颈问题,导致任务完成时间过长 网络负载严重不均衡 流量需求不对等 通信模式不匹配 发送 100% 接收 发送 0% 接收 发送 发送 Incast 交换机 接收 发送 发送 发送 发送 ① 交换机 ③ 接收 ② 接收 接收 网络侧ECMP实现AI训练流量调度,AI训练以巨型流为主,HPC业务以高并发小流为主,传统网络调度方式难以满足AI、HPC等计算密集型业务场景流量调优目标。 大数据流式计算多对一的数据处理模式:训练最后一级交换机和接收方之间Incast拥塞,造成计算流长尾时延,计算任务完成时间过长。 多对多逻辑通信需求与点对点物理通信实现:进程间MPI接口设计包含多对一、一对多及多对多的通信需求,计算节点间目前以单播实现MPI接口,物理网络存在大量冗余信息 通过网络与分布式应用各通信阶段紧耦合的设计方式优化分布式处理是重要发展方向 6 在网计算突破现有计算模式,重构应用处理逻辑,为系统算效提升带来质变 处理模式 主要优势 性能跃升 单 次 聚 合 时 延 单 次 同 步 时 延 与传统软件实现消息同步相比,IBSHARP方案性能提升近9倍 与传统软件实现聚合操作相比,IBSHARP方案性能提升近5倍 流量压缩 在网计算设备 交换机Tbps处理能力 在网计算将计算卸载至网络,实现数据随转随算,实现系统加速,提升算网资源利用率。 线速处理 网内处理,实现Sub-RTT通信 缩短传输路径 在网聚合,数据消冗与求和 7 产业已逐步布局在网计算的研究和实践,中国移动积极推进试验验证和标准制定 测试基准:GPU型号:2080 单位:图片数/秒 训练提速:相比参数服务器架构BytePS,通信密集型任务最高可提升60%以上 带宽优化:相比RAR架构Horovod,降低智算集群网络带宽占用约1倍左右 标准推进:在CCSATC3WG3牵头完成业界首个在网计算行标立项 架构 AlexNet VGG19 VGG16 VGG11 ResNet152 ResNet101 ResNet50 BytePS 330 110 120 130 110 155 250 Horovod 500 130 150 210 100 148 235 在网计算 540 155 175 215 115 165 265 产业与学术进展中国移动CFITI试验网创新验证 在网聚合 SHARP COMHPC16 ATP NSDI21 TrioSIGCOMM22 NetReduce ASPLOS23 基于多级可编 基于NP交换 基于FPGA和 程交换机参与 机实现参数 商用交换机 参数聚合,基 聚合,基于 实现传输层 于IP协议设计 UDP协议设 透明的参数 ATP报文头 计Trio-ML报文头 聚合 基于IB智能网 在网组播 IBbasedMPI-Bcast IPDPS04 基于IB交换 在网聚合 卡和IB交换机,机的硬件组 基于IB传输层QP,实现参数聚合 播能力,实现MPI广播 在网计算方向已有一定共识,但仍面临多方面发展挑战,需要产学研协同攻关 在网计算发展面临应用场景竖井式、协议实现封闭化、以及编程范式不友好等挑战 竖井式 封闭化 编程不友好 训练大数据 参数键值流向量 HPC多元应用 开发模式有差异:应用程序开发模式和网络开发模式不匹配,开发者学习门槛高 服务器 应用程序编程 网络设备 在网计算程序编程 运行框架不支持:Tensorflow、Spark等分布式开发框架不支持在网计算能力调用 应用RDMA软件栈IB传输层IB网络层 IB链路层 IB物理设备 计算数据 消息类型 训练专用网元 大数据处理专用网元 高性能计算专用网元 InfiniBand 基于IB协议栈及专用硬件的在网计 现有在网计算方案面向单一场景竖井式设计,在协议设计和硬件实现等方面缺乏通用性 算,性能优势明显,但成本高,协议栈封闭不兼容 需要从产业、生态等方面破除技术壁垒,构建统一通用的在网计算能力 在网计算NACA NetworkAssistedComputingAcceleration 逻辑物理统一通信原语统一 NACA以提升在网计算通用性为目标, 重构应用处理模式,构建全新的在网计算通信库,围绕拓扑映射、编程范式、计算实现、资源管理形成”四个统一”,实现网络辅助计算加速, 提升分布式系统算能算效 编程范式统一 网内资源统一 10 NACA架构核心在“一横一纵”,横向在网计算通信库承上启下,以异构网内算力实现统一在网计算服务,纵向编排管理全栈贯通,优化应用开发模式、协同端网任务部署、统筹网内资源管理 编程范式统一 分布式应用 在网计算 AI训练/推理大数据 通信原语统一 HPC MVAPICH 任务管理 跨架构统一编 通信库 同步/异步控制多对一通信一对多通信多对多通信 逻辑物理统一 编译管理 编排 排管 运行时管理管理 可靠传输 拓扑感知 标识转发理 高性能互联 RoCE InfinibandOmni-PathSlingshot 拓扑管理 异构网元 网内资源统一 交换机 DC交换机端侧适配器边缘汇聚 园区网关 资源管理 NACA在网计算物理实现比传统计算实现方式更加亲和业务逻辑拓扑,网络与业务紧密耦合 逻辑拓扑 计算节点逻辑链路参数服务器 交换机/路由器物理链路 主机 物理拓扑 在网计算相较传统计算与逻辑拓扑映射更亲和统一 传统计算在网计算 NACA面向差异化应用定义统一在网计算通信库,以统一的设备原语实现通信库,提升在网计算的通用性 AI应用 参数向量聚合(数据类型:数值) 大数据处理 键值聚合(数据类型:键值对) 123 456[a:1][b:2][a:3][a:2][c:4] 579 调用相同的聚合算子 [a:6][b:2][c:4] 广播同步聚合散播…… 在网计算通信库 类型 数据结构 统一原语 数值聚合 Array Map.get,Map.add,Map.clear 键值对聚合 Map Map.get,Map.add 聚合算子物理实现统一 NACA面向不同应用程序设计,提供统一编程语言及通用开发模式,简化异构设备开发入口 分布式应用 软件框架 AI训练/推理大数据HPC 应用 TensorFlowPyTorchSparkFlinkMVAPICH开发 应用1应用2 多种在网计算程序统一编译 前端编译 网络运维语言 领域 统一在网计算编程框架 LyraP4all 网络设备开发 中间转译及程序综合 转译至 异构在网计算网元 专用语言P4NPLMicro-C 网络设备1 网络设备2 NACA基于RDMA、CXL等高性能互联协议构建统一在网计算资源池,优化网络资源管理,提升网内资源利用率 DDR DDR DDR DDR DDR DDR 在网计算节点 在网计算节点 在网计算节点 CPU GPU CPU GPU CPU GPU NIC,交换芯片 NIC,交换芯片 NIC,交换芯片 高性能互联协议(RDMA、CXL等...) ①自定义协议栈 优势:设计灵活、高效 劣势:开发复杂度高,技术封闭 ②基于现有协议栈(如RDMA) 优势:兼容性高,可复用现有成熟加速技术 劣势:方案不灵活,传输效率相对较低 16 两种封装机制 消息是分布式应用进程间通信的传递内容。传统网络设备基于数据包转发,在网计算设备基于消息处理,因此需要把消息和数据包的语义映射起来 主机传统网络设备在网计算设备主机 应用 应用 传输层 Message 消息处理 传输层 网络层IB、TCP/IP 链路层 IBLink、Eth 数据包转发 Packet 数据包转发 网络层IB、TCP/IP 链路层 IBLink、Eth 链路层协议头 路由层协议头 自定义头 负载 链路层协议头 路由层协议头 传输层协议头 携带消息相关信息 负载 在网计算要保证与端侧计算的结果等价,即保证计算正确性。计算正确性还受丢包影响,网络拥塞和乱序则会加剧丢包,因此网络拥塞控制、可靠性传输是在网计算正确性和计算效率的保障 问题:丢包、重复包影响计算正确性方案:依靠拥塞控制和可靠性传输降低丢包 •利用bitmap高效记录已收到和已处理包的序号; a1 a2a3 a1+a2+? ? 发接•基于现有可靠性传输协议如Go-Back-N、选择性重传等,针 端端 送收对在网计算进行改进。 所有数据包 聚合时发生丢包 接收数据包 (MID=1,PSN=2)PSN范围0-2 发送端 a1 a2 a3a3 a1+a2+a3+a3 ? 聚合时收到重复数据包 已经接收的PSN 接 第一次接收 聚合 1 0 重复数据包丢弃 聚合完毕后转发 端 收•优化网络负载均衡方案,避免负载不均导致的拥堵; •基于现有PFC、ECN、DCQCN等流量控制机制针对在网计算进行改进 17 在网计算多级编译编排部署架构实现程序、元素、执行一致性保证 硬件、拓扑、指令、能力多级依赖多任务共享设备,程序段集成困