wangxuekuan 2019-02-21
整理 | apddd
出品 | AI科技大本营(ID:rgznai100)
尽管相当数量的人工智能服务,是由云计算网络提供,但在响应低延迟、保护隐私、应用场景等方面,手机AI芯片无可替代。例如人脸解锁,图像增强、识别,智能助手,拍照场景识别,这些你我每天都会接触的功能,离不开手机神经引擎的加持。
AI-Benchmark测评
AI-Benchmark是苏黎世联邦理工学院(ETH Zürich)计算机视觉实验室Andrey Ignatov开发的AI基准测试程序,它不依赖于每个SoC供应商自己的SDK工具和API基准,能更客观地展示终端性能。
其测试任务包括以下9项(http://ai-benchmark.com/tests.html):
一骑绝尘 or 不分胜负
在刚出炉的2019年2月排行中,高通骁龙855位列榜首,紧随其后是联发科Helio P90处理器。而华为最强手机处理器麒麟980(去年9月发布),在这项测试中,已被骁龙855大幅甩开35%。
骁龙855(总分19769)对浮点和量化神经网络都能提供出色的硬件加速——前者依靠Adreno 640 GPU,而量化网络则运行在Hexagon 690 DSP中。这种组合省略了AI独立运算单元,依旧是传统的CPU/GPU及DSP/ISP兼职处理AI任务。这种设计思路,令SoC更小巧,也更容易开发,但原本用于图形任务设计的GPU,在更远的未来可能会触及架构瓶颈,难免还要面对芯片架构的一次大调整。
芯片之争既是长跑,也是冲刺。
关于量化网络
开发神经网络时最大的挑战是让其真正起效,训练一般希望速度快准确率高。使用浮点算法是保持结果精确最简单的方式——GPU拥有加速浮点算法库,所以不需要过多关注其他数值格式。
而随着大量神经网络模型投入实际应用。训练计算需求随研究者数目线性增长,预测所需的周期与用户数目成正比。这意味着纯预测效率迫在眉睫。
这就是量化神经网络的用武之地:量化网络最初的动机是减小模型文件尺寸,在模型载入后仍然转换回浮点数,这样你已有的浮点计算代码无需改动即可正常运行,另一个量化的动机是降低预测过程的计算资源需求。
虽然只是中端芯片,但联发科P90(总分18231)的实际AI性能,几乎与骁龙旗舰处理器不分伯仲(虽然P90理论GMAC参数占下风),它采用了独立的AI芯片——其设计来自GPU“魔改”,以优化深度学习任务。与竞争对手相比,这款芯片的不足在于CPU性能弱了30%,GPU也差强人意。
华为麒麟980(总分14646)发布已近半年,虽然账面成绩逊一筹,但值得指出的是,它的浮点性能与两个对手不分胜负,这意味着运行浮点神经网络任务,亦相差无几——这是当下AI研究和开发的主流技术,而且每个网络架构,都能以浮点模型训练。反之则不然,能转换为量化模型的网络较少,且常常伴随着准确度大幅下降。所以在2019年初,华为麒麟980仍算强大。
回顾历史,早在2004年,华为开始组建手机芯片研发队伍,经过5年研发,到2009年,才拿出第一款海思K3。到2014年初,推出麒麟910,首次采用28nm制程,才有自己的名声。整个2014年,华为不停的迭代,一共发布了6款芯片,终于有了长足进步。
再到2015年11月,麒麟950 SoC发布,采用16nm FinFET Plus工艺,勉强追上高通。而在950之后,华为又在2016年发布了960,2017年发布970,再到2018年7月发布710、8月发布980,终于开始领跑——之后的一个季度,华为麒麟970/980家族几乎垄断了AI-Benchmark商用设备榜单。
那么,目前地表最强的移动AI处理器最终花落骁龙855?隔壁苹果家的A12X Bionic可能并不同意(AI-Benchmark目前只支持Android平台)。