Netflix 利用 AMD Epyc 处理器将带宽增加多达 400 Gbps
Netflix 的高级软件工程师德鲁·加拉廷(Drew Gallatin)公开了该公司优化硬件和软件架构的努力,允许向超过 2.09 亿用户提供大量视频娱乐节目。
该公司目前能够从单台服务器每秒压缩多达 200 GB,但同时希望升级它。据汤姆硬件公司9月22日星期三援引汤姆硬件公司的话,该研究的结果在2021年欧洲BSD会议上公布。
加拉廷说,Netflix 能够使用 32 核 Epyc 7502p (罗马) CPU 的组合将内容推至每秒 400 Gb, 256 GB DDR4-3200 内存、18 个 2 TB 的西式数字 SN720 NVMe 驱动器和两个 PCIE 4.0 x16 Nvidia Mellanox ConnectX-6 Dx 网络适配器,每个适配器均可容纳两个 100 GB 连接。
为了了解该系统的最大理论吞吐量,有 8 个内存通道提供每秒约 150 GB 的带宽,以及 128 条 PCIE 4.0 线,允许 I/O 带宽高达 250 GB。在网络单位中,分别为每秒1.2结核病和每秒2结核病。值得注意的是,这是 Netflix 用来呈现其最流行内容的。
此配置通常每秒可提供高达 240 GB 的内容,这主要是由于内存带宽的限制。Netflix 随后尝试了不同的非统一内存架构 (NUMA) 配置,其中一个 NUMA 节点每秒可产生 240 GB,四个 NUMA 节点每秒可产生约 280 GB。
然而,这种方法有其自身的一些问题,例如延迟较高。理想情况下,它应该从 NUMA 无限织物中存储尽可能多的批量数据,以防止 CPU 瓶颈和关闭,因为与正常内存访问竞争。
Gallatin 解释说,通过软件优化可以克服这些限制。通过将 TLS 加密任务拆包到两个 Mellanox 适配器,公司将总吞吐量提高到每秒 380 GB(通过额外调整最多为 400 GB),或每网接口卡 (NIC) 每秒 190 GB。
由于 CPU 不再需要执行任何加密,使用四个 NUMA 节点的总利用率下降到 50%,没有 NUMA 的利用率降至 60%。Netflix 也在探索基于其他平台的配置,包括英特尔 Xeon 白金 8352V (冰湖) CPU 和安培的巨型 Altra Q80-30,配备 80 臂 Neoverse N1 内核,最高可达 3 GHz。
在没有 TLS 拆解的情况下,Xeon 测试床能够达到每秒 230 GB,Altra 系统可达到 320 GBper 秒。由于对每秒 400 GB 的结果不满意,公司已经在构建一个处理每秒 800 GB 网络连接的新系统。但是,某些必要的组件无法及时到达以执行任何测试。