三重加速,正是异构计算独有的魅力所在。
快手LaoFe NDP 架构图
●网络方面,LaoFe NDP 架构将 CPU 收发网络数据操作,卸载到 FPGA 上。Client 发送的请求包直接发送给 FPGA。相比 gRPC 基于 TCP/IP,功能过于复杂,性能和延时方案无法保证。而使用基于 FPGA 实现了一套 SD-RDMA 协议,通过应用层添加字段的方式,保证了类似 gRPC 的可靠性传输,这大大降低了请求时延。
●存储方面,LaoFe NDP 架构将 CPU 存储操作也卸载到 FPGA 上。为了可以最大程度发挥 FPGA 的能力,快手基于通用 KV 存储场景定制了一套易于 FPGA 访问的 KV(Key-Value)引擎。同时,其支持 SSD/英特尔® 傲腾™ 持久内存/DRAM 内存、基于 hash 的 Key-Value 存储引擎,能够有效加速存储性能。通过实战检验,使用 KV 查表的吞吐相比 CPU 方案提升了足足 5 倍以上。
●计算方面,LaoFe NDP 架构通过 DSA 的方式将计算操作卸载到 FPGA 上,实现了一个领域专用处理器。领域专用处理器是一类针对特定领域量身定制的处理器。它针对特定领域可编程,同时在特定领域问题处理上能带来显著的性能和效率的提升。再加上英特尔® 至强® 可扩展处理器、英特尔® FPGA 等设备,可以帮助快手将 LaoFe NDP 架构优势发挥到极致。
网络、存储、计算加速后示意图
异构计算背后,一场性能的变局
事实上,异构计算并非新的概念,其早在上世纪 80 年代中期就已经被踢出,当时便被认为有着计算能力强、可扩展性好、资源利用率高等特点。但是,为什么异构计算时至今日,才再次发挥出巨大作用呢?
我们知道技术是发展的,很多在以往无法实现的构思,可能在若干年后发光发热。就比如 1956 年提出的人工智能技术,在半个世纪后才发展壮大并成为了社会生活必不可缺的一部分。支撑起其变化的一方面是数据处理技术的成熟,另一方面就是算力自身的发展。异构计算也是如此,英特尔在其发展的过程中起到的关键作用。
在快手的 LaoFe NDP 架构中,英特尔® Stratix® 10 FPGA 表现十分出众。全新的英特尔 Hyperflex™ FPGA 架构相比前一代时钟频率提高了 2 倍,功耗降低了 70%。此外,更快的时钟频率减小了总线宽度和知识产(IP)的规模,释放了更多分 FPGA 资源,以添加更强大的功能。同时它采用了超感知设计工具,减少了布线拥塞和设计迭代,提高了设计工作的效率。
一只蝴蝶都可能引发一场风暴,更何况是产品效能的全面提升。当英特尔® Stratix® 10 FPGA 在 LaoFe NDP 每个环节中频繁出现,其带来的影响是巨大的。
1. 通过将负载从 CPU 卸载到 FPGA 中,并采用 Hash 表查找优化、随机访存、读写分离等方式,快手将单节点参数服务器的吞吐性能提升了 5-6 倍,整体请求延时则降低 70%-80% ,这有助于提升上层应用的实时性,提供更佳的用户交互体验。
中国智能网版权所有,未经书面授权不得复制或建立镜像
Copyright 2001-2018 www.lplzn.com. All Rights Reserved