加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 运营中心 > 交互 > 正文

英特尔oneAPI:化解异构挑战拥抱数据时代

发布时间:2019-12-24 03:27:24 所属栏目:交互 来源:互联网 
导读:副标题#e# 回顾过去35到40年间计算的发展历程,计算力的增长速率呈指数级上升,从万物数字化、万物互联、万物移动化到万物云化,当前进入万物智能化。 在PC时代,互联网用户增长了十亿人。硬件和软件结合的典型例子就是PC上X86架构和Windows系统的结合。 进
副标题[/!--empirenews.page--]

回顾过去35到40年间计算的发展历程,计算力的增长速率呈指数级上升,从万物数字化、万物互联、万物移动化到万物云化,当前进入万物智能化。

在PC时代,互联网用户增长了十亿人。硬件和软件结合的典型例子就是PC上X86架构和Windows系统的结合。

进入移动化时代,从10亿的互联网用户增长到100亿的设备,呈现10倍的增长。硬件和软件的结合也发生了变化,变成了ARM架构和iOS及Android操作系统,同时Linux系统和X86平台也占据一部分市场。从10亿到100亿,实现的是指数级的增长。

英特尔oneAPI:化解异构挑战拥抱数据时代

英特尔oneAPI:化解异构挑战拥抱数据时代

进入以数据为中心的时代,异构计算也随之出现。

以往CPU、GPU、FPGA等,均可以独当一面。而当下,传统的通用架构已远不能满足需求。CPU、GPU、FPGA甚至AI加速器等多种架构之间组合,方能招架得住处理数据密集型、复杂的工作负载。未来,这种异构计算将成为常态。

英特尔oneAPI:化解异构挑战拥抱数据时代

英特尔oneAPI:化解异构挑战拥抱数据时代

一、应对多架构挑战 oneAPI应运而生

当前,不管是CPU、GPU、FPGA等哪一个硬件平台往往都需要开发者维护独立的代码库,这些代码库需要使用不同的语言、库和软件工具进行编程。这是一项极其复杂和耗费时间的工作,大大降低开发速度、抑制创新。

具体而言,异构计算使得一个用户可能在同一个数据中心里既需要CPU里做虚拟机,又需要FPGA来做各种解压缩或者加速器,还需要GPU来做深度学习或者人工智能。这就需要在数据中心里安各种各样的硬件,跑各种各样的软件。如果还是各自为政的话,对于用户来说,就算应用将来要扩容、硬件平台将来要升级,都是成本很高的一件事。甚至此前做的都全白做了。

为了解决这一难题,oneAPI应运而生。oneAPI是一个以开发者为中心的平台,简化多架构编程的一个统一编程模型,开发者可以自由选择架构,大大降低了使用不同的代码库、编程语言、编程工具和工作流程所带来的复杂性。oneAPI采用统一、简化的语言和函数库,用于表达并行化,且基于行业标准和开放式规范,能够与现有 HPC 编程模型互操作。

英特尔oneAPI:化解异构挑战拥抱数据时代

oneAPI包括了一项基于开放规范的行业计划和一款beta产品。该规范包括一种编程语言、强大的API函数库以及底层硬件接口。oneAPI beta产品为开发者提供了全套的开发工具,包括编译器、编程库、分析器等,并把这些工具封装为特定领域的工具包。初期oneAPI beta版主要面向英特尔®至强®可扩展处理器、带集成显卡的英特尔®酷睿®处理器,以及英特尔® FPGA,未来还将支持更多硬件。

oneAPI将实现与现有行业标准的互操作性。oneAPI开放式规范包括一种跨架构的编程语言Data Parallel C++ (DPC++)、一套用于API编程的函数库以及底层硬件接口(oneAPI Level Zero)。有了这些组件,英特尔和其他企业就能创建他们自己的oneAPI实现来支持自己的产品,或基于oneAPI进行新产品开发。

oneAPI规范是为支持来自多个厂商的各种CPU和加速器而设计的。oneAPI beta版目前支持英特尔CPU(英特尔至强®、酷睿™、凌动)、英特尔Arria FPGA以及作为未来独立数据中心GPU代理开发平台的第九代/英特尔核芯显卡。oneAPI日后将支持更多英特尔加速器架构。

DPC++是基于大众熟悉的C和C++语言,专门为oneAPI设计的主要编程语言。它融合了来自Kronos Group的SYCL*,从而可以支持跨CPU和加速器上的数据并行和异构编程,目的是为了简化编程以及提高代码在不同硬件上的可重用性,同时能根据特定的加速器进行调优。

DPC++语言增强将会通过一个开发者社区项目来进行扩展,以简化数据并行编程。该项目向公众开放,并将通过开发者们的共同努力不断发展。

目前,很多库和组件已经开源或即将开源。英特尔一位工程师指出:“开发者有想法可以去做扩展,这对开发者来讲是没有太大阻碍的。第二个层面,我们做这个目的是因为后面计算会比较复杂,因为你可能有AI的应用,有后面更多的跨架构/跨平台的应用,还有各种框架上的支持,这些都是依赖于开发者对oneAPI的支持或者之后的发展,应该说本身它是一个发展的平台,它不是固定不变的东西。英特尔开了一个很重要的头,也投了大量的人力和物力,后面要做的话应该是开发者共同和我们一起把这个东西往前推的过程。”

用一个形象的比方,不同架构的选择如同是“自助餐”,有各种各样的菜,可以自由组合,想吃沙拉就吃沙拉,想吃红烧肉也可以。此前一些企业提供的方案是封闭性的,有的公司只供红烧肉,有的公司专门做沙拉。而有了oneAPI的支持,企业客户才能够更灵活的选择各种架构进行任意组合,oneAPI是通过软件来帮助实现硬件灵活组合的愿景。

二、OneAPI是英特尔软硬结合软件为先战略中的重要一步

现在数据量极其庞大,已经远远超出了在一台计算机上就可以完全处理的承载和能力,必须要清楚如何应对这些无法放进一台计算机的大规模数据的处理方式,这是巨大的机会。接下来面临的挑战是,如何将性能提升十倍、百倍,而并不是简单的提升10%的问题。

英特尔首席架构师Raja Koduri认为,摩尔定律将持续给我们带来非常好的性能提升;而通过软件和硬件的结合,可以让摩尔定律的提升变成十倍。因为摩尔定律会带来更多的晶体管,而软件可以将越来越多的晶体管的极致性能释放出来。将软件和硬件结合就是英特尔的战略重点,这也是未来面临的非常巨大的机会。

英特尔oneAPI:化解异构挑战拥抱数据时代

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读