开发者学堂课程【阿里云异构计算 FPGA 解决方案介绍: 阿里云 FaaS(FPGA as a Service)舜天平台解决方案(二)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/652/detail/10829
阿里云 FaaS(FPGA as a Service)舜天平台解决方案(二)
三.视频合成(混流)与画中画
第三种解决方案实际上是视频转码解决方案的一个附加的一个方案。大家都知道这次新冠疫情给全国的各行各业都带来了很大的挑战,不管是在线的教育,在线的办公,需求呈现井喷的态势。这个解决方案我们叫做视频合成和混流方案。它最大的优势可以在同一个屏幕上最多展示32个画面。现在全国的中小学生都是采用线上直播的方式来上课,从老师的角度,他肯定要实时地观察自己学生听课的情况,包括问问题,做作业的情况。这个解决方案,它就很好的满足在线教育直播的这种场景。最大的画面可以达到32个,这个解决方案最核心的 IP ,是我们和塞恩斯共同合作来推出的。当然它也可以把所有的画面做一个单路的合成和输出,那么最高我们可以支持4K的分辨率,没秒60帧的帧率。
四.大数据过滤
第四个方案叫做大数据过滤,它的最大的优势是低延时,高精度。这个大数据过滤,接下来简单介绍一下它的应用场景。跟刚才视频转码应用于互联网直播这个场景是一样的,有一些主播为了吸引更多的观众,让自己成为当红的主播,有时候会在直播一些不太符合社会主义价值观的内容,在没有这种解决方案之前,通常都是观众看到之后,如果他愿意,他可能会跟直播网站说哪一个主播现在播出的直播内容可能不太合适,网站再去把这些主播直播的画面给他切掉,这是一种场景。
第二个场景,现在在各种商场,在户外越来越多的 LED 屏幕被用于广告或者说其他一些信息的传播,通过新闻也了解,由于工作人员的失误,屏幕上直播出一些不是很好的内容,但往往从发现到再去处理中间会隔很长的时间,会造成不好的影响。这个解决方案最大的好处就在于一旦出现了这种情况,可以在不到1ms的时间内就马上对屏幕进行切掉的处理,可以说几乎没有什么影响。它的原理采用了 FPGA 的 AI 的图片识别,这种直播流在往外播的时候,可以设置一个时间间隔,比如每1s,每5s,每10s去抽直播流的图片配合上图片的 AI 识别,如果认为这张图片是所谓的敏感图片,比如是涉黄,涉恐,涉暴等这一些,马上进行处理。它最大的优势,一是超高的速度,二是相对于 CPU 的解决方案,它的功耗非常低,大概低于10%。
五.AI 推断
下面介绍 FPGA 在 AI 领域里的应用。现在一提到 AI ,基本上大家的脑袋第一时间跳出来 GPU ,这两者之间大致可以划一个等号。其实 AI 领域里的应用分成两个大块,一块是所谓的训练,一块是所谓的推理。当然训练的最终的目的是推理应用,训练的时候是让我的网络具备推理的这个功能,让它去支持各个不同的应用场景。在训练这一侧到目前为止,没有任何的器件能够和 GPU 相媲美,包括 ASIC , FPGA , CPU 。尤其是高端的 GPU 像 P100 , V100 这些,算力最高都已经达到 40T/s ,没有器件能跟它去比。但实际上,从市场份额划分,训练的市场可能占整个 AI 市场只有10%左右,90%的应用是推理侧的应用,但是在这个推理侧, FPGA 由于它的架构上的优势,实际上在很多特定的应用场景当中是相比 GPU 也具有极高的性价比。我们在计算内部的一个 VU 的应用就充分地说明了这一点,这个 VU 开始的时候是用的 P100 器件,在做图片的分类与目标识别。
这个 VU 在使用 P100 GPU 做图像的识别,后来觉得成本太高,后来找到我们可不可以用 FPGA 看一下能不能来做,我们很快就把这个方案就做出来了,经过实测,单片 FPGA 和单片 P100 GPU 的卡的性能大致是等同的,大概每秒中处理接近500张。但是从成本上来对比,这个 FPGA ,一片 FPGA 器件的价格只有这个 GPU 价格的十分之一不到,所以这样体现了非常高的性价比。所以最后这个 GPU 就用于其他的应用。图片的分类和识别全部采用 FPGA 的集群。
然后回来对于广告预估 GTR 这个应用,基本上知道现在大量的互联网厂商包括像头条,微博。广告至少占比一半的收入来源,但是现在的广告有一个精准投放,精准推送这样的需求。也就是说在这种情况下你才能够提升用户的点击率,反过来讲点击率上升,用户的转化率和购买率也会提高。在这个应用里面 FPGA 相对于 GPU , CPU 也是体现出了极高的性价比。这个案例也是业内的同步的一家互联网厂商,当然它之前用于广告 GTR 的 CPU 是 M40,M40 是相对来讲一款比较古老的 GPU 卡,相对于现在的 GPU 卡,它的性能肯定要差一些,但是 M40 的价格也是非常便宜的。你把它换成高性能的 GPU 卡之后,比如 P100 ,V100 它的性能确实是可以飙升很多,但是像刚才说的,它的成本也会飙升很多。那么在右边的柱状图里面,这个绿色的 FPGAVU9P ,蓝色的 GPU 。实际上当把 M40 换成更高端的 P100 , V100 之后,其实就变成了性能和成本两个柱子去对调一下。最后从性价比的角度,这个结论基本上是不变的。就是任然 FPGA 相对于 GPU 的一个非常高的性价比。至少到目前为止,我们在目标图片识别和分类以及广告预估 CTR 这两个应用场景之下都找到了 FPGA 的用武之地。目前来讲,广告预估 CTR ,一般来讲采用的网络模型都是 D&Y 的,还有一个是 DFM ,这两个网络模型实际上都是基于 tensionfload 框架 ,从目前业界应用的情况来看 FPGA 对于 tensionfload 这种框架下的各个网络模型通常会有比较好的性价比的优势,包括延时的优势。
这个解决方案是我们联合业内一家算法开发的公司。包括疫情在内,大家对自身的健康、免疫力,肯定从重要性的角度都提升了非常多。在生命科学,基因测序领域,国内的产业发展,也可以说是非常庞大。据不完全统计,从事包括基因测序在内的各种体外检测的公司,国内大约有1300多家。基因测序最大的特点在于计算的数据量特别庞大,开始所有的基因测序都是通过 CPU 来跑的,和之前提到的 SkyLake 96HT 的 CPU 去做对比。如果采用第二代这个基因测序的这个算法,测一个人的 wgs 全基因组,用 SkyLake 96HT的 CPU 大概需要13-14个小时,才能测一个人的全基因组。但现在把计算量最大的一部分从 CPU 里剥离出来放到 FPGA 里面去跑,最高达到18分钟就可以测一组。
FPGA 用于基因测序行业,实际上从2018年就已经在应用了,当时的算法,大概是三小时左右,相对于 CPU 来说已经有四倍的性能提升。从2018年到2019年的年终,业内很多厂商对算法又进行了进一步优化,一直到如今做到18分钟就能够测一个人的wgs全基因组,相对于十三小时已经是几百倍效率的提升。这些方案在阿里云上已经可以完整输出,也有了内部或外部的商用客户。
另外还在阿里云官网上提供了一个优秀实践入口。比如图片转码,视频转码,广告预估 CTR,随时可以去阿里云的官网上,自己去做测试,也是完全免费的。只需要提供一个数据源,选定用 CPU 来输出算例和用 FPGA 来输出算例,两者之间到底对比情况如何可以自己体会。把算例由 CPU 切换成 FPGA 后,到底带来了哪些改变。