伟大还是荒谬?华为带来全球首款手机 AI 芯片:NPU 是噱头吗?
9月2日晚,华为终于带来了新一代旗舰处理器麒麟970。作为少数能自主研发处理器的手机厂商,华为每代的处理器产品发布都会受到不少的关注。目前麒麟的旗舰处理器也完全可以在高端市场上和高通、三星一较高低。
坦率地说,此次麒麟970在架构上和上代960相比没有变动,依然采用了4颗A73核心,而没有使用ARM最新的A75,算是一个遗憾。当然,从16nm到10nm是一个不小的进步,对功耗有极大的帮助。
不过,这次麒麟970发布会上最引人注目的应该是那颗新加入的NPU。对CPU、GPU和协处理器等名词,我们已经很熟悉了,但NPU可能还是第一次听说。目前,麒麟970应该是唯一一款搭载了NPU的手机处理器。今天我们就来详细剖析一下这款备受关注的NPU。
◆ ◆ ◆ ◆ ◆
麒麟970上的NPU是什么?
NPU的英文全称为“Neural-network Processing Unit”,即神经网络处理单元。与之对应的,CPU是中央处理器、GPU是图形处理器。“神经网络”听起来可能有些晦涩难懂,但换成“人工智能”“AI”似乎就熟悉多了。
简单来说,NPU就是手机上专门处理人工智能深度学习的硬件。看到这里,不少人可能会想到高通骁龙820上首次搭载的NPE。的确,NPE和NPU有类似之处,它的英文全称为“Neural Processing Engine”,即神经处理引擎。NPE和NPU都能处理类似的任务,但NPE是软件层面,而NPU是硬件层面。如果拿电脑举例,显卡是其图像处理器,是硬件;而寒霜、虚幻、EGO等都是游戏引擎,仍属于软件。当然高通的NPE还是要借助CPU和GPU完成的。
另外又一点要说明的是,麒麟 970 是首款搭载 NPU 的处理器,但这款 NPU 的研发者其实是国内的寒武纪公司。这家公司目前主攻智能处理器芯片,给华为公司的产品为寒武纪-1A NPU。
◆ ◆ ◆ ◆ ◆
这块 NPU 有什么用?
降低功耗,减轻 CPU、GPU 压力
在高清视频出现初期,很多显卡还没有针对它的硬解功能,只能依靠 CPU 加解码器软解。因此那时看一个本地高清视频,CPU 的占有率经常飙到 90%,无法进行其他工作。而现在几乎所有主流 CPU 集成的核显都能轻松应对一般的高清视频,CPU 的负载很低。
NPU 的作用与此类似,它能将和智能深度学习相关的工作接管过来,缓解 CPU 和GPU 的压力,从而降低功耗,这对手机来说至关重要。根据华为官方的说法,在 NPU 的帮助下,手机识别出 1000 张照片仅需消耗 0.19% 的电量。
本地端完成部分云 AI 的工作
目前手机 AI 的工作基本都是将数据和请求上传到云端服务器,完成后在传输给用户,过程略为繁琐。而有了 NPU 后,手机就能在本地完成一些原来在云端才能做的工作。过程更为简洁的 NPU 在处理一些简单任务时会比云模式更为高效。
◆ ◆ ◆ ◆ ◆
NPU 意义非凡,但实际效果仍待验证
此次麒麟 970 上首次搭载了 NPU,意义非凡,尤其对华为、寒武纪这两个国产品牌来说。或许,随着人工智能技术的发展,在未来,NPU 在手机 SOC 中会成为和CPU、 GPU 一样标配。
但是,就目前来看,NPU 的实际意义依然有待验证。首先,目前大部分手机上的人工智能技术的实现方式仍然是通过云端服务器完成。例如最近发布的 MIUI 9 上的照片查找功能,就是将用户的图片上传到云端,识别完成后再把结果发送给手机。云端 AI 流行的原因一个是现在的网络条件下可以在短时间内完成这个工作,另一个原因是手机端的芯片无法胜任如此繁重的任务。
尽管,麒麟 970 上的 NPU 的算力相比手机 CPU、GPU 要强很多,但和云端服务器仍然无法相比,它能独立完成的工作非常有限。而且,云服务器的大数据优势,是本地端的 NPU 所不具有的。从安全和隐私的角度来说,华为也绝不可能把大数据发送给每个用户。
另外,NPU 增加了手机的成本,占据了更多的空间。在寸土寸金的手机中,NPU 必然要挤占掉 SOC 的一部分空间,成本也必将转嫁到产品售价中,而用户是否愿意为它买单仍是一个问题。
还有一点,目前麒麟处理器只用在华为手机上,尽管华为开放了开发者平台,但实际的号召力仍待验证。相比之下,苹果、高通的方案对开发者更有吸引力,很多时候,生态圈比技术优势更为重要。
当然以上这些推测和分析都只是小雷(微信 ID:leitech)的一家之言,麒麟 970 上的 NPU 究竟是划时代的革命性产品,还是顺应时下人工智能热度的营销噱头?伟大到荒谬只有一步之遥,这一切都将在不久后发布的华为 Mate 10上得到验证。
那么,对 NPU 的前景,你看好吗?