Hotchips 33学习:Google的Video Coding Unit 视频转码单元

视频转码的算法在逐渐优化,软件转码消耗的时间也越来越多,
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
换算为pixels/second的话,可以看出更加明显的数量级的差异
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
描述一个这个卡的作用,同样的视频质量的话,传输带宽可以降低5倍;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
自研的卡实现了两种转码算法:
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
编码核心,使用标准的256bit位宽的AXI数据总线,和32bit位宽的APB控制总线;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
设计上采用了西门子的EDA的软件;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
设计上的目标:1. 最大化利用效率;2. 最大化用户空间的控制;3. 为编码器优化带宽和延时
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
支持1个decode对应48个encode,也就是上传1个视频,转码成多种版本;
从下图可以看出,三个解码,十个编码单元;其他的控制器模块通过片上网络进行互联;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
下面这个图具体描述一个片上互联网络的拓扑
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
用户空间控制转码的选择,固件控制了任务的分发和隔离。
解码的任务到达固件,转发给DMA引擎,然后到达加速器上的编码单元;这里重要的事解码帧的复用,可以提高编码的并发;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
为了最大化Perf/TCO,每个卡支持2个ASIC,每个主板支持5个卡,每个host支持2个主板,因此一个host支持20个ASIC;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
性能对比部分可以看到编码部分的增长是线性的,但是单输出转码因为受限解码模块的数量并不会很快,多输出转码反而是比单输出的情况下提高了1.2倍;
Hotchips 33学习:Google的Video Coding Unit 视频转码单元
【不过这个卡设计的确实不是很好看】
THE END
2021年8月29日

Hotchips 33学习:Google的Video Coding Unit 视频转码单元

上一篇:Redis-持久化


下一篇:数据库迁移工具Kettle连接Mysql数据库报错:Driver class ‘org.gjt.mm.mysql.Driver‘ could not be found, make sure the解决