0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

智能化编码面临的算力瓶颈 如何利用CPU解决全链路智能编码?

LiveVideoStack 来源:LiveVideoStack 2023-08-09 09:09 次阅读

智能化编码面临的算力瓶颈

图中是一个视频转码推流的一般性流程图。主播将视频上传到上行CDN,然后再由视频处理中心进行各种前处理,包括内容理解,审核,编辑,增强和超分,然后进行编码,再推送到下行CDN,供观众观看。

ae71458e-364a-11ee-9e74-dac502259ad0.png

红色框部分都是和AI相关的部分。智能化编码中,AI所需算力已经超过编码本身。1080p的数据超成4K,编码只需要20几个物理核,但是如果要超分,就需要一张GPU卡。一张GPU卡5000块一个月,对比下来成本优势一目了然。

根据相关视频企业公开的财报,视频转码和带宽的成本占到公司全年收入的10%左右。随着AIGC的发展,未来肯定不局限于10%,因此成本问题是我们的痛点之一。

aeb51f70-364a-11ee-9e74-dac502259ad0.png

CPU全链路智能化编码的优势就在于成本节约,运维简单。下面举一个更具体的例子:

我们都知道转码方式有很多种,但CPU有两个不可替代的优势:1.高灵活性;2.高复用性。CPU的升级几乎没有成本,只需升级一下软件部分即可,以云为基础,申请一个虚拟主机,无论是docker还是container都可以随用随放,十分自由灵活,成本很低。

由于超分部分对算力的要求非常高,需要通过GPU来辅助,但同时也会引发一些问题:客户将高要求的AI负载迁移到GPU上,将编码和前处理完全分离。这就像在一间屋子里解码——发送到另一间屋子进行前处理——再转回来编码。这不仅让流程变得冗长,也对运维造成了极大负担,数据的反复调度也造成了一定时延的增加。

CPU全链路智能化编码正是解决了这一痛点。

英特尔第四代至强可扩展处理器及AMX赋能智能化编码

接下来会介绍英特尔第四代至强可扩展处理器及其内置的AI加速器AMX,以及如何利用AMX和英特尔成熟的软件栈和工具链帮助视频编解码工作者,打造全链路智能化编码。

最新的统计数据,英特尔至强服务器在中国市场的数据中心的占有率保持在80%以上,可以说至强服务器是数据中心的基石。第四代至强一个重要的革新就是内置了数个硬件加速器,用于不同应用场景的性能加速,例如之前需要外置的PCIE插卡就已经内置在CPU内部。

aed170a8-364a-11ee-9e74-dac502259ad0.png

从左往右第一个AMX适用于AI;QAT负责压缩、解压和加解密;DLB负责Load Balance,CDN负责负载均衡,自动dispatch到闲散的资源上;DSA负责内存拷贝,不需要CPU参与,异步拷贝不仅速度快,而且不占用CPU内存;IAA负责存内分析,更多和数据库相关,IAA可以在不解压数据的情况下分析数据。

AMX的全称是Advanced Matrix eXensions,高级矩阵扩展指令集。它在AVX512的基础之上做了进一步的扩展。AMX有两个核心思想,一个是Tiles,一个是Timo。Tiles是物理上两地寄存器的叠加,16个AVX512叠加在一块。Timo是针对两地Tiles的矩阵运算。最新的至强每一颗物力核上都有一个内置的AMX,充当AI 的加速卡。

aff5c86c-364a-11ee-9e74-dac502259ad0.png

和大多数加速卡一样,AMX加速的是量化精度。目前第四代至强支持的是BF16和INT8,未来也会很快支持FP8和FP16。BF16的表达范围和FP32一模一样,只是精度比FP32小一点。目前绝大多数的场景,BF16已经足够。对于训练来说FP16足矣,而推理则只需要INT8。

b0668dae-364a-11ee-9e74-dac502259ad0.png

AMX是如何加速矩阵乘的呢?我们在做大的矩阵时可以把矩阵拆成16*64,然后一次性计算。如果算力不够,可以用oneDNN和MLKDNN处理,而AMX加速矩阵乘计算,算力是前一代产品的8倍。

b0ad32d6-364a-11ee-9e74-dac502259ad0.png

这张图是至强服务器峰值计算能力的演进过程。从2019年开始的第二代至强可扩展处理器支持VNNI,最新发布的第四代至强可扩展处理器支持AMX,可以看到每个指令周期的计算能力得到8倍的提升。

b0f880c4-364a-11ee-9e74-dac502259ad0.png

硬件性能只是一方面,软件生态某种意义上说对开发者来说更为关键。这是一张英特尔 AMX的软件生态图,从下往上,从最底层的操作系统到虚拟化KVM、HyperV,再到核心AI计算库都是英特尔开发的。在框架层面,主流的TF和PyTorch也都包含在内,除此之外英特尔还提供了丰富的推理工具。这些成熟的软件生态使得我们的开发者可以专注于算法创新,而不用考虑如何部署等细节,开箱即用。

b1770fca-364a-11ee-9e74-dac502259ad0.png

BF16和INT8的高算力对将AI从GPU迁到CPU之上确实有很大的帮助,但如何保证精度呢?英特尔有一个工具叫做INC,内置了很多专门用于精度的校正算法。作为开发者,只需要做三件事:输入模型、输入数据集和输入精度要求即可。INC会根据客户的输入进行tuning,直到有一个用户满意的算法。如果最终达不到设定的精度要求,还可以对某些层进行回滚,从而保证设定的精度可以达到要求。

b1e11672-364a-11ee-9e74-dac502259ad0.png

回到视频编解码领域,我们知道视频前处理是在FFmpeg解码之后,对YUV或者RGB数据进行处理,处理结束后再送到编码器x264或者x265编码。由于整个pipeline中,数据的处理速度并不一致,因此为了让整个过程的数据顺滑地流动起来,就需要做一部分的改造,比如解码后的raw data放入一个buffer队列中,AI推理异步从这个队列中取数据做推理,并把推理后的结果送到编码器中,这需要一定量针对FFmpeg的开发工作。

幸运的是,英特尔已经帮用户做好了。FFmpeg中有一个英特尔的OpenVINO后端,用户直接使用就行。FFmpeg的DNN AI推理后端,目前只支持2个后端,一个是Tensorflow,另外一个就是英特尔的OpenVINO。

总结:FFmpeg已经集成了OpenVINO作为AI 的后端推理引擎且英特尔有专门的团队去维护,大家可以放心使用。

b2365eac-364a-11ee-9e74-dac502259ad0.png

这是一个和合作伙伴的实际案例。在视频增强和目标检测这两个场景下,使用了英特尔第四代至强可扩展处理器AMX优化的AI推理性能相对上一代平台分别提升了1.86倍和1.95倍。与此同时,精度损失被控制在可接受的范围,这也使得英特尔的客户在CPU上实现了全链路智能化编码,大幅降低了部署成本和运维成本。






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18304

    浏览量

    222347
  • 编码器
    +关注

    关注

    41

    文章

    3365

    浏览量

    131589
  • DSA
    DSA
    +关注

    关注

    0

    文章

    47

    浏览量

    14983
  • 硬件加速器
    +关注

    关注

    0

    文章

    38

    浏览量

    12640
  • GPU芯片
    +关注

    关注

    1

    文章

    292

    浏览量

    5692

原文标题:面对算力瓶颈,如何利用CPU解决全链路智能编码?

文章出处:【微信号:livevideostack,微信公众号:LiveVideoStack】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    通友集团现已拥有自主, 智能化的,复合软磁材料生产研发设备

    智能化软磁材料
    华萃微感电子
    发布于 :2024年03月18日 14:45:05

    哈夫曼编码怎么算 哈夫曼编码左边是0还是1

    哈夫曼编码是一种基于频率的变长编码方式,常用于数据压缩和信息传输领域。它是由美国数学家大卫·哈夫曼在1952年发明的,被广泛应用于无损压缩领域。 哈夫曼编码算法的基本思想是根据字符出现的频率构建一棵
    的头像 发表于 01-30 11:27 577次阅读

    大茉莉X16-P,5800M大称王称霸

    Rykj365
    发布于 :2024年01月25日 14:54:52

    磁性编码器和光电编码器的比较

    伺服电机编码器是一种关键的反馈装置,用于测量和控制电机的转速和位置。在选择伺服电机编码器时,常常面临一个选择:使用磁电编码器还是光电编码器。
    的头像 发表于 01-18 10:29 755次阅读

    FM350-2可以带8增量式编码器采集速度吗?

    请问FM350-2可以带8增量式编码器采集速度吗? FM350-2是8 通道智能计数器模块,我想用来采集8增量式编码器,采用速度测量模式
    发表于 12-20 08:19

    有人实现过在rk3588安卓系统里编码4k@60视频吗?

    有人实现过在rk3588安卓系统里编码4k@60视频吗? 自己测试发现,编码4k的性能瓶颈在yuv数据的操作上,比如memcpy、yuv转换。官方文档说可以
    发表于 10-16 17:39

    如何利用远程运维来实现设备的智能化管理

    科技迅速发展,设备制造厂商对于设备智能化的需求越来越大。设备智能化不仅能提高生产效率,降低生产成本,还能提高设备使用的安全性和可靠性。然而,如何实现设备的智能化管理,成为了设备制造厂商所面临
    的头像 发表于 09-19 13:38 424次阅读

    BM1684编解码性能是同时支持32解码和2编码吗?内存大小和内存带宽会不会成为瓶颈

    BM1684编解码性能是同时支持32解码和2编码吗?内存大小和内存带宽会不会成为瓶颈
    发表于 09-19 06:33

    鸿创达基于瑞芯微RK3588的8K人工智能核心板

    ,可提供6Tops。拥有丰富的接口,支持多硬盘、千兆网、WiFi6、 5G/4G扩展和多种视频输入输出;支持多种操作系统;可适用于ARM PC、边缘计算、云服务器、智能NVR等领域 支持
    发表于 09-11 20:25

    创龙科技位居头版,2023深圳elexcon电子展为智能化赋能!

    !elexcon2023重磅呈现25+品类千余款热门产品,现场同期四展精彩联动,助力链接电子产业上下游合作,让国内供应更有韧性。 ​ ​ 是驱动人工智能产业发展的核心动力
    发表于 08-24 11:49

    “多”维演进:智能化编码架构的研究与实践

    围绕更“高清化”的趋势,我们能看到近年各大企业都在陆续推出自研的下一代编码器,包括266、AV1,甚至是私有标准的编码器。同时,我们也在智能编码和增强上看到不少的需求。为了降低“高清化
    的头像 发表于 08-15 16:37 590次阅读
    “多”维演进:<b class='flag-5'>智能化</b><b class='flag-5'>编码</b>架构的研究与实践

    鸿蒙智联再出发,携手伙伴共赢空间智能化,创造无限可能

    ,使个人智能化向空间智能化迈进的趋势势不可挡。华为迎势而上,凭借其在通信连接领域30余年的积淀,以及华为终端交互产品十余年的打磨,于2021年正式推出华为智能,突破连接、交互、生态
    发表于 08-09 17:14

    编码器是什么?编码器有哪些分类及应用

    编码器是什么?编码器有哪些分类及应用;编码器是什么?在数字信号处理和通信系统中,编码器是一种重要的设备,用于将原始数据转换为字符序列或二进制码序列。
    的头像 发表于 05-18 11:08 3577次阅读
    <b class='flag-5'>编码</b>器是什么?<b class='flag-5'>编码</b>器有哪些分类及应用

    增量型编码器与绝对值编码

    增量型编码器与绝对值型编码器怎么选择?在进行编码器选择时,增量型编码器和绝对值型编码器是两种常见的选择。增量型
    的头像 发表于 05-08 11:28 1510次阅读
    增量型<b class='flag-5'>编码</b>器与绝对值<b class='flag-5'>编码</b>器

    瑞芯微RK3568开发板安防后端方案赋能NVR/XVR全面硬件升级

    ,同时采用22nm先进工艺,确保低功耗高性能。“安防智能化应用的三大关键基础要素是、算法及数据。随着人工智能在行业的广泛落地,智能安防对
    发表于 05-06 10:52