构建300通道视频编码服务器
快照
组织:NETINT、Supermicro和Ampere® Computing
问题:高质量直播视频流需求激增,传统x86处理器难以应对现代流媒体所需的高强度视频处理任务。
解决方案:NETINT通过将Quadra VPU与Ampere Altra Max处理器结合,重新设计了视频转码服务器,创建了更小、更快、更具成本效益的服务器架构。
主要特性
- 高性能:支持同时转码多个视频流(例如95x 1080i30、195x 720i30)。
- 成本效益:相比传统x86解决方案,运营成本降低80%。
- 高级处理:支持去隔行、软件解码和AI推理任务。
- 灵活控制:通过FFmpeg、GStreamer、SDK或NETINT的Bitstreams Edge应用接口管理。
技术创新
- 定制ASIC:NETINT专有ASIC实现高质量、低成本视频处理。
- Ampere Altra Max处理器:为密集计算环境优化,提供前所未有的效率和性能。
- 优化软件:利用最新FFmpeg版本和Arm64 NEON SIMD指令,显著提升性能。
影响:该合作带来了突破性的直播视频服务器,吞吐量相比x86软件提升20倍,运营成本大幅降低,并支持NETINT VPU原本不支持的视频格式。
引言
近年来,高质量直播视频流需求呈指数级增长。NETINT与Supermicro和Ampere Computing合作,重新构想了视频转码服务器,开创了新的视频处理能力。该架构的独特之处在于,NETINT VPU处理密集型视频编码和转码,而强大的主机CPU执行去隔行和软件解码等额外功能,还支持AI推理任务。
该案例研究讨论了如何优化系统,在单个Supermicro MegaDC SuperServer ARS-110M-NR 1U服务器中同时转码多种视频流组合。
NETINT的愿景
响应客户对有限CPU处理能力和飙升电力成本的担忧,NETINT开发了定制ASIC,旨在实现最高质量、最低成本的视频处理和编码。通过结合Quadra VPU和Ampere Altra Max处理器,重新发明了直播视频转码服务器。
重新发明视频服务器的要求
- 设计更小、更快。
- 运营成本降低80%。
- 吞吐量增加20倍。
为什么NETINT选择Ampere处理器
NETINT熟悉Ampere计算的高性能低功耗处理器,其与Quadra VPU完美互补。Ampere Altra Max云原生处理器为新时代计算和能源受限世界设计,提供前所未有的效率和性能。
问题
Ampere Altra Max能否在成本效益的1RU外形中,同时去隔行100x 576i、100x 720i和10x 1080i视频流,而传统x86处理器无法做到?
Ampere的响应
工程师利用NETINT Quadra VPU和Ampere Altra Max 96核处理器的高性能,重新定义了直播视频服务器。初始结果鼓励,但未达到NETINT的目标。
通过研究FFmpeg中的去隔行滤镜和Arm64优化,发现使用Arm64 NEON SIMD指令的优化汇编实现,在FFmpeg 6.0中视频去隔行性能提升高达2.9倍。
性能挑战
运行完整视频工作负载时,初始结果未达到性能目标。通过分析平台级性能指标,使用mpstat工具发现系统空闲时间约29%,表明存在性能阻塞。
使用BCC softirq工具调查中断,显示软件中断不是性能限制因素。随后使用perf工具测量PMU计数器,发现内核函数alloc_and_insert_iova_range在性能差的情况下消耗40倍更多CPU周期。
通过Linux内核启动选项iommu.passthrough=1解决性能随时间下降的问题,将TLB未命中率降低。最终,NETINT工程师通过FFmpeg主线中的额外Arm64去隔行优化,实现性能目标,并将整体CPU利用率降至50-60%。
结果
成果是基于NETINT、Supermicro和Ampere合作的NETINT 300通道直播视频服务器Ampere版,支持在1U服务器中同时转码多种视频流组合。该服务器扩展了系统功能,支持在密集、节能、成本效益的1U服务器中运行需要高性能CPU的视频工作负载。
行动号召
NETINT的愿景基于客户需求,重新构想了直播视频服务器,为需要高性能CPU处理的视频工作负载客户解锁全新价值。
有关在Ampere CPU上优化代码的更多信息,请查看Ampere开发者中心的调优指南。
关于公司
NETINT:成立于2015年,专注于使用专有ASIC进行视频编码,结合硅的好处与软件的质量和灵活性。
Supermicro:全球技术领导者,致力于为企业、云、AI、元宇宙和5G电信/边缘IT基础设施提供率先上市的创新。
Ampere Computing:现代半导体公司,设计云计算未来,提供业界领先的云性能、能效和可扩展性。