评苹果A11神经网络引擎:AI加速将成为高端手机芯片标配
苹果在最新发布会上,公布了十周年版iPhone X,极大地吸引了人们的注意力。在iPhone X众多特性中,使用面部识别FaceID代替原有的指纹识别TouchID进行屏幕解锁和身份认证无疑是最大的亮点之一,这有可能成为苹果对于手机交互进步的又一次推动。
FaceID使用了人工智能技术完成人脸三维建模中的特征提取,并且用这些特征配合算法来实现人脸识别。现场演示中,FaceID人脸识别用户体验非常流畅,而在流畅体验背后的功臣,则是A11 Bionic SoC上集成的人工智能加速器,苹果官方称之为“神经网络引擎(neural engine)”。
我们首先来看一下什么是人工智能加速器。要理解人工智能加速器的概念,不妨先回顾一下GPU。在上世纪90年代,随着多媒体应用,尤其是3D游戏的兴起,人们发现传统的CPU的架构对于这类需要高速图形渲染的应用力不从心,原因是CPU在芯片上放了许多控制逻辑和缓存单元,真正留给计算单元的芯片面积反而不多。
这时候,人们设计了3D加速卡,以3dfx,Nvidia和ATI为代表的芯片公司在当年可以说是叱咤风云,而随着时间和市场的变迁,3D加速卡的概念也慢慢过渡到了用来处理通用图形计算甚至通用并行运算的GPU,而在今天市面上的独立显卡厂商也只剩下了Nvidia和ATI。
人工智能加速器和GPU很像,只是当年的驱动应用是多媒体和3D游戏,而今天的驱动应用则是人工智能,包括语音助手,人脸识别,物体识别等等。这一波兴起的人工智能的基础算法是神经网络,而神经网络会大量用到矩阵乘法以及卷积运算。又一次,人们发现CPU的运算能力无法支撑目前的人工智能运算了,而GPU虽然也能实现高速人工智能运算,但是功耗太大(为了移动应用设计的Nvidia TX2都要消耗10W之多的功耗),于是,为了让更多的移动设备能用上人工智能,人工智能加速器就应运而生了。
人工智能加速器通常是一块专用的硬件单元,可以以单独芯片或者SoC上的IP的形式存在。由于专门为人工智能加速设计,因此在处理此类运算时可以实现非常高的性能并且消耗很低的功耗。之前在华为公布的Kirin 970上,就集成了这样一块人工智能加速器,可见人工智能加速器正在越来越多地进入移动芯片市场。
华为麒麟970上也集成了人工智能加速模块
苹果在人工智能这一重大风口自然不甘落后,在人工智能加速领域也早就有了布局。
看如今市场,Nvidia之所以能占据人工智能硬件的领头羊位置,与其开放易用的CUDA接口方便程序员使用GPU加速人工智能不无关系。而在移动端,如何充分调用SoC上的GPU来加速人工智能一直让开发者颇为头痛。苹果在之前就公布了Metal和Core ML两个不同层面的接口可供开发者调用,以加速iOS平台上的人工智能应用。
公布软件接口的另一目的,就是为了为专用硬件的开发积累经验,以实现软硬件协同优化。在今年五月,就有消息称苹果名为“神经网络引擎”的专用人工智能加速硬件已经基本完成。而到了今天,苹果则真正公开宣布了神经网络引擎。
苹果在发布会上公布的关于神经网络引擎的信息包括:
使用双核心设计。由于缺乏其他配套信息,从这条信息中我们能推测出的就是苹果或许可以允许神经网络引擎的几种使用模式,包括全关闭,只打开一个核,以及双核全部打开,以满足不同情况下的性能/功耗需求。
性能可达0.6TOPS。这样的性能已经能处理目前主流的神经网络模型计算。可见,目前1TOPS左右的处理性能将会成为人工智能加速器的标配。
实时处理。GPU处理人工智能运算时,另一个令人诟病的问题就是延迟大,因为GPU往往是基于块数据(batch)处理,因此在需要实时作出反应的移动端并不适合。苹果的神经网络引擎则强调了自己是实时处理这一点,显然是为了与GPU作出区分,以配合移动端实时应用的需求。
除此之外,我们还能猜到神经计算引擎是SoC上的一个IP模块,而不是单独的一块芯片。
我们可以和其他包含类似加速模块的芯片对比。华为的麒麟970包含了和苹果神经网络引擎类似的人工智能加速模块,其峰值性能可达1.93TOPS(为苹果神经网络引擎的3倍多),但是实际性能不等于峰值性能,还需要取决于软硬件协同优化效果。高通的枭龙系列包含Neural Processing Engine软件SDK,能帮助开发者更好地利用高通芯片上的GPU/CPU/DSP完成人工智能加速。可以说,高通的方案相比华为和苹果显得较为保守(之前推出过Zeroth人工智能硬件加速模块但是后来被放弃了),但是在人工智能的大潮下估计高通也会在之后的芯片中加入相关人工智能加速器。
虽然发布会公布了不少信息,但是还有更多未知,需要时间去澄清。
最令人感兴趣的问题,恐怕是神经网络引擎除了FaceID之外,还可以用在哪些其他的地方?由于FaceID对于实时性的需求不高(延迟在1秒内估计就能满足客户需求),如果只为这个用途专门配一块0.6TOPS的加速器就显得太过奢侈了,因此神经计算引擎应该还会在其他的场合能用上。那么,其他的应用场合又是哪些呢?是专供苹果操作系统内部原生app使用,还是会开放给第三方app也能使用?目前这一切都还不得而知,但是苹果打造神经网络引擎的野心肯定不止于FaceID。
到底有几个版本A11 Bionic?如果只有一个包含神经网络引擎的版本,那么在不包含FaceID的iPhone 8上,神经网络引擎一定会要做一些其他事情。如果有两个版本的A11 (含神经网络引擎的iPhone X版本和不含神经网络引擎的iPhone 8版本),那么只能说苹果钱太多,能一次设计两个版本的芯片!
今天是《半导体行业观察》为您分享的第1395期内容,欢迎关注。
R
eading
推荐阅读(点击文章标题,直接阅读)
关注微信公众号 半导体行业观察,后台回复关键词获取更多内容
回复 比亚迪,看《比亚迪的芯片布局,王传福的野心》
回复 长电科技,看《从江阴小厂到世界前三,长电科技一路狂奔》
回复 滤波器,看更多滤波器相关内容
回复 全面屏,看更多全面屏相关内容
回复 人工智能,看《零基础看懂全球AI芯片:详解“xPU”》
回复 展会,看《2017最新半导体展会会议日历》
回复 投稿,看《如何成为“半导体行业观察”的一员 》
回复 搜索,还能轻松找到其他你感兴趣的文章!
摩尔邀请您加入精英微信群
你好,感谢长期对半导体行业观察的关注和支持!为了方便各位精英专家交流,我们组建了一些专业、微信交流群,欢迎你加入,我们还会邀请在摩尔直播App做过技术和行业分享的100+技术大牛入群和大家交流。加群方法: 长按二维码,加群主为好友,填写加群需求信息,拉你入群。(微信限制每天好友添加数量只有300人,请耐心等待)
地域群:
上海、深圳、北京、江苏.浙江、西安、武汉、成都.重庆、合肥、厦门.晋华、大连、台湾、新加坡、日本.韩国、美国、欧洲、摩尔直播学习群。
专业群:
模拟射频设计、EDA.IP、数字芯片设计、模拟混合信号设计、版图Layout、数字PR.验证、晶圆制造Fab、设备EE、半导体材料、半导体设备、封装测试、半导体投资、市场销售、AE.FAE、嵌入式开发、实习交流、采购.IC代理、AI芯片
专业微信群规则:
1. 专业、高效交流,建议进群请修改群昵称,格式:公司或学校+职位或专业+中文或英文,请服从群主管理,如果多次违规会被请出交流群;
2. 原则上每人加不超过3个群,精彩讨论内容,群主会负责在不同群同步,既然加了群,请大家尽量置顶群,积极参与群讨论;
3. 群里聊天讨论仅限半导体专业内容,杜绝专业无关内容,特别是养生、拉票、微商等内容,严格禁止,为自己公司打广告以不引起群友反感为限;
点击阅读原文加入摩尔精英