>>返回主页
百度架构师 崔超文:AI推理加速引擎-Anakin

2018-10-17 11:10

崔超文1.jpg

  崔超文:大家好,我今天演讲的主题是AI推理加速引擎-Anakin

  我们的初衷,目前深度学习应用在各个方面、各个产业,包括以图搜图、语音检索、无人驾驶、人脸识别,打造一个跨平台的高性能的计算能力,为AI的产业化部署提供方便,提高AI算法部署效率,提高用户体验。

  看一下目前市面上或者我们看到的推理引擎的现状,从AlphaGo包括一些聚合的模型,比如几个比较复杂的模型,模型爆炸性增长,硬件增长、计算能力增长相对有限。再一个,多个训练框架对我们也会提供,包括Tensorflow。这些框架由于它的设计理念不同,研发人员水平参差不齐,导致表现性性能有非常大的差异,增加了工程师的负担,无形中增加成本。目前芯片异构化更多一些,包括FPGAARM,一些专有的芯片。我们在服务端或应用端部署的时候,过程中我们也会把真正的项目去实际工程化,这些会耗费非常大的人力和物力。我们会设计一套跨平台支持多种平台包括AI GPU等等一些新的芯片,支持更多的硬件平台,在不同的硬件平台上实施更高性能的计算能力。

  接下来看一下Anakin目前的现状,开源,大家可以看到所有的代码,再一个是跨平台支持众多硬件的扩展能力,再有是高性能。下面看一下设计原理及核心特征,首先是多框架支持,已经支持的有PaddleLegoCaffe。整个框架相对来说比较轻量。目前在做Graph一些优化里,通过一个resource管理平台,统一管理所有的网络参数,在多线程的时候,参数共享。在这基础上也会做运行时的内存分析。再一个是支持图可视化,真正的用户可能非常关心我把我的模型输入给你之后,你会不会改动我模型,会不会跟我之前的设计初衷不一样。我们可以把你的网络完整显示出来,你可以看到所有的网络参数跟你之前的设计不一样,经过图优化之后,会把图优化的结果动态显示出来,会显示所有的优化。还有一个是地址预映射,将更多I/O密集操作与计算密集操作组合在一起。我们还会提供一套跨平台的支持不同硬件的库,后端汇编级优化。提供了非常多层面的调用方式,可以用作人工智能计算库,可以用作独立推理引擎,再一个还封装了完整的RPC服务的接口。

  性能表现,这边提供了非常多的实际测试,这个测试是AnakinTensorRT的对比。这个是在ARM端的测试,这是我们在两款ARM处理器上的性能对比。下面看一下AnakinTensorflow在英特尔处理器上的性能对比,对Tensorflow来讲,它的优化相对来说比较高,整体的性能非常明显。这是Mobilenet模型测试,在比特大陆上的测试。

  上面是Anakin大体的现状情况,混合精度,未来会基于自动模型压缩和剪裁,我们现在在研究和开发的方向是基于LLVM编译和自动硬件代码生成,帮助用户更快的进行扩展。

  谢谢大家。

0