当前位置: 首页 > 编程日记 > 正文

AI算力需求6年增长30万倍,「超异构计算」才能满足下一个10年

今年 3 月,「强化学习教父」Richard Sutton 在《苦涩的教训》一文中指出,「70 年的人工智能研究史告诉我们,利用计算能力的一般方法最终是最有效的方法。要在短期内有所提升,研究人员要利用专门领域的人类知识。但如果想要长期的获得提升,利用计算能力才是王道。」

大家都知道,这波人工智能的浪潮的三要素分别是数据、算力和算法。虽然仍有争议,但是计算力的大幅提升确实是这波深度学习革命的决定因素之一。

去年OpenAI发布的一份报告显示,自2012年以来,在最大规模的人工智能训练中所使用的计算量呈指数级增长,3.5个月的时间翻一倍(相比之下,摩尔定律(Moore’s Law)有18个月的倍增周期)。自2012年以来,该指标增长了30多万倍(18个月的倍增周期只会增加12倍)。

在过去的几十年里,摩尔定律一直推动着芯片制程和性能的稳步提升,然而摩尔定律已经失速,CMOS的微缩至少在十年内还是会继续进行下去,但随着技术难度的挑战越来越高,需要投入的资源会越来越高,必然会导致整个成本上升,如何才能发挥摩尔定律的经济效益?按照这个趋势,想要满足未来AI发展的需求,芯片行业势必要有所变革。

在上个世界八十年代,异构计算的出现满足了各种不同任务的计算需求,推动了个人计算机和互联网的发展。

然而大数据和人工智能时代的到来,新的计算需求不断衍生出来,当我们展望下一个十年,或者更长远的未来,随着人工智能应用的愈加广泛和深入,特别是万物互联时代的到来,AI需要在云边端上全面落地,传统的异构计算已经不能满足日益发展的人工智能计算需求,

于是,在异构计算上更进一步,英特尔开始押注「超异构计算」。

AI时代需要超异构计算

首先,传统的异构是指在完成一个任务时,采用一种以上的硬件架构设计,把它们组合在一起。组合方式主要包括:

  • 一体化SoC,也就是直接把不同的芯片在不同的板级连接起来,它的专用性最强、能耗最低、性能可能也最高,能效比非常好,但需要量很大,也就是应用范围很广,才值得去做,但要花上十几个月时间以及大量研发经费来开发,这就要求设计人员对应用场景的理解一定够深,且产品的灵活度不高,如果需求有变动,就要再等一个研发周期;
  • 分体式板卡,也就是将各种计算能力的加速内核放到一个芯片中,它的优势在于灵活,想用的时候可以随意组合,但板与板之间连接的功耗、带宽速度都要打很大折扣。

在真正的系统中应用AI时,它从来不是单独发生的,而是和其它的计算技术深度融合。所以,真正要完成一项任务,仅有AI是不够的,需要多种计算任务同时进行。传统的异构计算,已经不能满足产业应用对AI计算的需求。

英特尔认为,我们需要迈向超异构时代。

超异构将提供更多的灵活性和更快的产品上市时间,它包含三大要素:多架构、多功能芯片;多节点和先进封装技术;统一的异构计算软件。

据了解,多架构、多功能的独立芯片可以根据计算负载分成以下4种:标量计算,CPU 就是典型的标量处理器;矢量计算,主要是指向量计算;矩阵计算,主要应用在是卷积神经网络中;空间计算,即运算的时候有灵活的空间处理架构,这个方面的代表是 FPGA。

其中CPU是最通用的,虽然可能不是其中性能最好的。GPU在性能模型上有些有趣的创新,它比以前更通用,但不像CPU那么通用,但是GPU对于这种高强度工作负载的性能更好。FPGA加速器,它们的效率要高得多。例如,对于特定功能而言,FPGA加速器效率更高,更节能,更具成本效益,但它并不通用。

所谓“超异构计算”,“超”就超在可以把很多现有的、不同节点上已经验证得挺好的晶片集成在一个封装里,把这几种计算整合在一起达到“计算最优化”。我们真正要关注的是性能和通用性的不同搭配组合,因此英特尔我希望提供标量、矢量、矩阵和空间的多种架构组合,部署在CPC、GPU、FPGA和加速器套件之中。

在多架构、多功能芯片方面,英特尔提供了一个端到端的丰富产品线布局。目前,英特尔已经推出了包含CPUFPGAAISC等在内的一系列已经芯片解决方案,而且还将于2020推出首款独立显卡,并且预计在2021年推出7纳米通用显卡,完整覆盖了从边缘一直到云端的计算场景。

在多节点和先进封装技术方面,传统的封装就是把芯片平铺在一起,这样有几个缺点,第一是增加了面积,第二是它们之间的连通带宽还需要加速。2.5D和3D封装就是为了解决这些问题,不只是把计算芯片和内存连起来,还能把计算芯片互相连起来,同时还能把芯片像高楼一样分成几层堆起来,这就是先进封装技术。

具体来说,超异构计算整合先进计算单元有以下几个关键点:一是与板级设计一样,用多功能、多架构的芯片处理和加速不同的运算负载;二是把计算单元封装在一个芯片里,但这与板级层面的连接不同,是在封装层设计先进的技术,把带宽放大,同时功耗降低,体积减小,是一种封装集成技术;三是使用这种复杂的超异构模式,不能给软件开发人员增加难度,因此超异构计算还需要统一的异构计算软件。

软硬协同:OneAPI

对于大部分开发者来说,一般是根据软件去选择硬件,而不是反过来,因此英特尔将「统一的异构计算软件」也包含到了「超异构计算」这个大框架里。

也就是说,简化软件开发是超异构的要素之一,英特尔需要以一个统一的软件接口,让客户编程即可扩展到 CPU、GPU、FPGA 和 ASIC 芯片等硬件平台上。

而目前英特尔正在做的工作就是打造 OneAPI。

OneAPI旨在提供一个统一的编程模型,以简化跨不同计算架构的应用程序开发工作,而 OneAPI 也会吸收英特尔在 OpenVINO 等创新平台上的经验。OpenVINO软件开发者工具包实现了跨不同的SVMS(Scalar、Vector、Matrix、Spatial)架构,提供一致、优化的深度学习推理能力。

据了解,OneAPI将支持直接编程和API编程,并将提供统一的语言和库,可以在包括CPU、GPU、FPGA和AI加速器等不同硬件上,提供完整的本地代码性能。

  • 直接编程:One API包括一个全新的直接编程语言Data Parallel C++ (DPC++),这是一个可替代单架构专用语言的开放式、跨行业的编程语言。通过使用开发者熟悉的编程模型,DPC++ 能够提供并行编程的效率和性能。DPC++以C++为基础,融合了Kronos Group的SYCL,并包含在一个开放社区流程中开发的语言扩展。
  • 基于API的编程:One API强大的库跨越多个可受益于加速的工作负载领域。库函数针对每个目标架构都进行了定制编码。
  • 分析与调试工具:在领先的分析工具的基础上,英特尔将提供加强版的分析与调试工具,以支持DPC++和广泛的SVMS架构。

据悉,英特尔将在今年第四季度发布一个One API开发者测试版本,显然,对于AI开发者来说,值得期待。

相关文章:

一览六月最热的5篇AI技术论文

作者 | 神经小姐姐转载自HyperAI超神经(ID: HyperAI)导语:始建于 1991 年的 arXiv.org 至今已收录超过 100 万篇论文预印本,近年来,其每月提交量已经超过 1 万篇。这里成为一个巨大的学习宝库。本文罗列了 arXiv.org 上…

OnCheckedChanged的触发需要AutoPostBack=true

OnCheckedChanged的触发需要AutoPostBack"true"

OpenCV中resize函数五种插值算法的实现过程

最新版OpenCV2.4.7中,cv::resize函数有五种插值算法:最近邻、双线性、双三次、基于像素区域关系、兰索斯插值。下面用for循环代替cv::resize函数来说明其详细的插值实现过程,其中部分代码摘自于cv::resize函数中的源代码。 每种插值算法的前…

企业金融云存储建设之路

当前世界形势千变万化,各种技术创新层出不穷,新兴业务模式也是波谲云诡,企业的信息化建设如何紧跟业务,适应业务乃至驱动业务转型是各级管理者的头等题目。对于底层执行者,如何能够快速满足企业的要求,如何…

【原创】VB利用堆栈实现算术表达式计算

这个抽象算法早已为人所知,只不过在VB的公开文档中鲜见示例代码。于是,为了提高自己的程序设计水平,锻炼自己的能力,我写了如下代码。 【VB代码版权所有,允许转载修改用作学习目的,转载必须注明来源】 【求…

树莓派4与英伟达Jetson Nano性能大比拼,谁是最佳的嵌入式“电脑”?

作者 | Chris Pietschmann译者 | 弯月,责编 | 屠敏转载自CSDN(ID:CSDNnews)导读:日前,Raspberry 基金会发布了开发者为之兴奋的 Raspberry Pi 4,其不仅在性能上进行了全面的升级,而且…

作为互联网流量入口,CDN日志大数据你该怎么玩?

CDN是非常重要的互联网基础设施,用户可以通过CDN,快速的访问网络中各种图片,视频等资源。在访问过程中,CDN会产生大量的日志数据,而随着如今越来越复杂的网络环境变化,和业务的迅速增长,日志数据…

OpenCV中图像旋转(warpAffine)算法的实现过程

在OpenCV中,目前并没有现成的函数直接用来实现图像旋转,它是用仿射变换函数cv::warpAffine来实现的,此函数目前支持4种插值算法,最近邻、双线性、双三次、兰索斯插值,如果传进去的参数为基于像素区域关系插值算法(INTE…

10亿美元续命!OpenAI获微软投资,意在通用人工智能?

来源 | OpenAI官博译者 | 孙薇编辑 | 一一出品 | AI科技大本营(ID:rgznai100) 7 月 22 日,微软宣布将对非营利人工智能研究组织 OpenAI 投资 10 亿美元,用于通用人工智能(AGI)的开发。双方将以微软原有的公…

TrayIcon 类 添加系统托盘不显示托盘图标

为什么80%的码农都做不了架构师?>>> 好久不碰 java swing最近写了一个swing 程序 添加托盘时,怎么也不显示图标,就一空白 ,在网上搜了老半天,大部无效。 边看帖子边看 java api ,结合理解,有一属性设置了一…

Crystal Report 加载模板报错 无法在c++ 堆栈中打开由jrc 引擎处理的文档

2019独角兽企业重金招聘Python工程师标准>>> 纠结了很久, 尝试过录入一个错误的路径,文件读取也是包相同的错误,也就是表示找不到路径文件而已,并不是开发环境的问题 于是设置一个最简单的路径,放置下去rpt模板,代码后续没有报错; 再次之前也修复了一个关于引用的dl…

Ubuntu下makefile及gcc生成静态库动态库的简单使用举例

环境:Ubuntu-13.10 32位(虚拟机)、gcc4.8.1 首先创建一个test_makefile_gcc文件夹,此test_makefile_gcc文件夹下包括:src文件夹用于存放源文件; include文件夹用于存放头文件;bin文件夹用于存放生成的动态库.so文件&…

Exchange Server 2013 安装完成后配置外部URL

Exchange Server 2013 安装完成后配置外部URL 比如 mail.contoso.com 1、转到 EAC → “服务器”,然后单击“配置外部访问域”。2、在“选择要与外部 URL 一起使用的客户端访问服务器”下面,单击“添加”3、选择您要配置的客户端访问服务器,…

Ubuntu下CodeBlocks的安装、配置及静态库动态库的简单使用举例

1、 从Ubuntu Software Center中搜索Code::Blocks并安装; 2、 在第一次启动时选择GNU GCC Compiler作为默认的编译器; 3、 生成静态库并调用操作步骤,代码同 http://blog.csdn.net/fengbingchun/article/details/17994489 3.1、New fil…

React 打怪笔记

介绍 本文为学习react中的记录。 Tips: 当组件的props或state有变化,执行render函数。无论是使用函数或是类来声明一个组件,它决不能修改它自己的propsReact 可以将多个setState() 调用合并成一个调用来提高性能。无状态函数式组件 (stateless functiona…

新闻智能分类练习赛开始报名啦!最先达到80分就可以领GPU,技术书籍!

现代信息爆炸般地产生,信息如海如潮。信息分类,不仅有利于加快信息检索速度,且有利于提高查准率。Internet是信息的重要载体,深入地研究与探讨网上信息自动分类的方法、技术和理论,已成为时代的迫切需求和新的研究热点…

项目经理应该具备的技能

作为一个优秀的项目经理应该具备五个方面的技能: 项目管理知识体系 应用领域的相关知识、标准和规则项目环境知识一般管理知识软技能/人际关系技能项目管理知识体系 就是要掌握常说的9大知识领域:范围、时间、成本、质量、人力资源、风险、沟通、采购再加上集成…

SSE2 Intrinsics各函数介绍

SIMD相关头文件包括&#xff1a; //#include <ivec.h>//MMX//#include <fvec.h>//SSE(also include ivec.h)//#include <dvec.h>//SSE2(also include fvec.h)#include <mmintrin.h> //MMX#include <xmmintrin.h> //SSE(include mmintrin.h)#incl…

中国城市道路名图鉴

作者| AlfredWu来源 | Alfred数据室&#xff08;ID&#xff1a;Alfred_Lab&#xff09;不知道大家出差或旅游的时候有没有发现&#xff0c;有些城市特别喜欢使用其它城市或者省份的名字作为道路名&#xff0c;特别是青岛市&#xff0c;这会儿还在徐州路&#xff0c;走过一个街区…

中国电子信息产业发展研究院主办的2018中国软件大会上大快搜索“又双叒叕”获奖了...

大快搜索自荣获“2018中国大数据企业50强”殊荣&#xff0c;12月20日在由工信部指导&#xff0c;中国电子信息产业化发展研究院主办的2018中国软件大会上&#xff0c;大快搜索获评“2018中国大数据基础软件领域领军企业”称号&#xff0c;入选中国数字化转型TOP100服务商&#…

SystemCenter2012SP1实践(15)共享库服务器和ISO

用过HyperV的同学都知道&#xff0c;HyperV调用ISO作为启动光盘的时候&#xff0c;必须保存在本地才行。网络共享下的一概不认。在SCVMM下&#xff0c;我们可以通过一些设置&#xff0c;让SCVMM下创建的虚拟机&#xff0c;支持调用不在同一台主机上的ISO文件。我是分隔线首先要…

XLNet:公平PK,BERT你已经被超过!

作者 | XLNet Team译者 | 孙薇责编 | Jane出品 | AI科技大本营&#xff08;ID: rgznai100&#xff09;【导语】几周前&#xff0c;XLNet 团队发布了新型预训练语言模型 XLNet&#xff0c;这个新模型在各项基准测试中都优于谷歌之前发布的BERT模型&#xff0c;其中模型 XLNet-La…

C/C++中switch用法的一种替换方式

在C/C中&#xff0c;switch语句是经常被用到的&#xff0c;当switch内的case语句较多时程序有时显得比较繁乱&#xff0c;此种情况下可以用另外一种实现方式替代switch。详细用法见例子&#xff1a; #include "stdafx.h"float AddFunc(float a, float b) {return (a …

My excellent 2018

又到一年年底时&#xff0c;除了感叹一句时间过得真快之外&#xff0c;也非常庆幸自己能够渡过了这精彩的一年。 工作 首先是工作上面的变化。自16年毕业以后就在招联消费金融有限公司上班&#xff0c;一直到今年的五月份。在招联的期间&#xff0c;有幸得到老大的赏识&#xf…

POJ 2955 Brackets (区间DP)

题目链接&#xff1a;http://poj.org/problem?id2955 BracketsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 1977 Accepted: 1012Description We give the following inductive definition of a “regular brackets” sequence: the empty sequence is a regul…

从芯片到AI智能芯片,一文了解它的前世今生

作者 | 元宵大师&#xff0c;Python高级工程师&#xff0c;致力于推动人工智能、大数据分析在金融量化交易领域中的应用。欢迎大家关注我的个人公众号《元宵大师带你用Python量化交易》。责编 | 胡巍巍来源 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;经过长期的发展…

Windows7下OpenGL简单使用举例

1、 从http://www.opengl.org/resources/libraries/glut/glut_downloads.php下载glut相关头文件和库glutdlls37beta.zip &#xff0c;(默认的windows机子上并没有glut头文件及相应的库&#xff0c;它主要用来打开窗口、开发和管理菜单&#xff0c;以及管理事件等)&#xff0c;…

Snagit9-12注册码

SnagIt 9 注册码&#xff1a; AM5SC-8LWML-MVMWU-DTLGE-ERMBE SnagIt 10 注册码&#xff1a; 5HCAK-DEGMZ-EYABA-M4LCC-ACBE2 DFKDA-JZ5FC-TGLAA-CM5DM-MFEBD CMCFH-93DCD-SFZYC-K5KCM-C7CA7 SnagIt 11 注册码&#xff1a; 7CTCC-5WQCS-98AY8-V8F2M-76258 NCTCC-5WFCK-98A28-V8…

Strut2访问

访问HelloWorld应用的路径的设置 在struts2中&#xff0c;访问struts2中action的URL路径由两部份组成&#xff1a; 包的命名空间action的名称 例如: 访问本例子HelloWorldAction的URL路径为&#xff1a; /l6n/helloWorldAction (注意&#xff1a;完整路径为&#xff1a;http:/…

单v100 GPU,4小时搜索到一个鲁棒的网络结构

作者 | Slumbers&#xff0c;毕业于中山大学&#xff0c;深度学习工程师&#xff0c;主要方向是目标检测&#xff0c;语义分割&#xff0c;GAN责编 | JaneNAS最近也很火&#xff0c;正好看到了这篇论文&#xff0c;解读一下&#xff0c;这篇论文是基于DAG&#xff08;directed …