《英特尔 oneAPI—打开异构新纪元》
目录
oneAPI是什么?
oneAPI的优越性/为什么使用oneAPI?
oneAPI包括什么?
DPC++:为oneAPI而设计的编程语言
丰富的oneAPI工具包
oneAPI:未来可期
oneAPI是什么?
oneAPI是统一的开发工具组合和软件接口,oneAPI可以让开发人员在CPU、GPU、FPGA、AI加速器等计算架构上实现“高效开发,任意扩展”。如英特尔软件战略与技术沟通会上,英特尔架构、图形与软件部副总裁兼计算性能与开发者产品部门总经理Bill Savage所言:“oneAPI既是一种行业规范,同时又是英特尔的一种产品。它可以简化并且统一跨不同架构、跨不同厂商之间的编程,它是一个鼓励社区和行业支持的一种开放、标准的解决方案”。oneAPI提供一个统一的编程框架和编程模型,以简化异构平台的编码复杂程度。
oneAPI主要分为两部分:
跨框架的编程语言。它基于行业标准和开放规范,支持广泛的行业生态系统采纳该技术来推动应用开发领域的新演进。
跨框架库的集合。它相对应的支持直接编程和API编程,通过统一的语言和库,在包括CPU、GPU、FPGA等不同硬件上,提供完整的本地代码性能。
oneAPI的优越性/为什么使用oneAPI?
如今,高性能计算作为基础的计算力,帮助我们迈向一个更健康、更安全、更包容、更有活力、更可持续的未来。高性能计算是异构计算的舞台,但异构计算的编程模型往往需要不同的硬件有独立的函数库和工具链,软件的维护成本极高。除此之外,开发人员难以熟悉各种硬件的底层技术,而且摩尔定律的放缓表明仅靠在晶体管密度上做文章并非长久之计。为满足现代工作负载在复杂场景、多任务并行、多架构组合的有效协同,是oneAPI实现指数级创新的关键所在。
oneAPI是一个为异构计算而设计的软件编程模型,具有开放的规范、高度的可扩展性,让开发者可以自由选择架构,无需在性能上作出妥协,也大大降低了使用不同的代码库、编程语言、编程工具和工作流程所带来的复杂性,使得开发者从私有的编程语言和编程模型的锁定中得以解放,同时支持最领先的硬件架构、丰富的库函数,使得针对框架层、应用层和服务层的开发变得更加高效。oneAPI的编程语言和库函数跟生态系统中的其它常用语言,如Python、C++和Fortran可实现无缝协同。打个比方,oneAPI和异构编程的关系,如同携号转网,当然这个“转网”,不需要有关部门的批复。
oneAPI包括什么?
DPC++:为oneAPI而设计的编程语言
DPC++的全称为Data Parallel C++,Data Parallel意为数据并行,基于C语言和C++语言融合(OpenCLear的高级编程模型)。DPC++是一种基于标准的开放式跨行业语言,可代替单一架构专有语言,能支持跨CPU、跨加速器的数据并行,并能让开发人员实现异编程。
DPC++存在的意义,正是为了简化编程、提高代码在不同硬件上的可重复用性,并可以根据特定的加速器进行调优。
丰富的oneAPI工具包
截止目前英特尔公司发布的oneAPI产品中,最新的oneAPI产品针对英特尔的CPU、GPU、FPGA进行了深入优化,并包含众多针对不同场景的套件,以达到高效、高性能以及跨平台的性能。
Intel® oneAPI Base Toolkit
Intel® oneAPI Base Toolkit工具包是其他产品的基础,包含了我们在Parallel Strudio中常用的软件以及icc编译器、MPI、DPPCPP等。Intel® oneAPI Base Toolkit可使开发人员跨CPU、GPU和FPGA构建、测试和部署以性能为中心、以数据为中心的应用程序。
Intel® oneAPI HPC Toolkit
Intel® oneAPI HPC Toolkit工具包提供可扩展的快速C++、Fortran、OpenMP和MPI应用程序。Intel® oneAPI Base Toolkit和Intel® oneAPI HPC Toolkit几乎包含Intel Parallel Studio XE的功能,并且英特尔公司将其免费向用户开放。
Intel® oneAPI IoT Toolkit
Intel® oneAPI IoT Toolkit工具包主要用于建立可在网络边缘运行的高性能、高效、可靠地解决方案,属于物联网领域。
Intel® oneAPI Rendering Toolkit
Intel® oneAPI Rendering Toolkit工具包主要用于创建高性能、高保真的可视化应用程序,适用于各种渲染领域。
Intel® AI Analytics Toolkit
Intel® AI Analytics Toolkit工具包为数据科学家、AI开发人员和研究人员提供了优化的深度学习框架(PyTorch、TensorFlow等)和高性能Python库,加速端到端机器学习和数据科学库。这些组件是使用oneAPI库构建的,用于低级计算优化。可最大化从预期处理到机器学习的性能。
Intel® Distribution of OpenVINO™ Toolkit
Intel® Distribution of OpenVINO™ Toolkit工具包用于从设备到云部署高性能推理应用程序。该工具包基于卷积神经网络(CNN),可将工作负载扩展到整个英特尔硬件(包含加速器),并最大限度地提高性能。
oneAPI:未来可期
oneAPI在全球已经获得广泛的业界支持
截至今日,支持oneAPI概念的业内领先企业和研究机构已经超过30家,其中包含业界的各个领域、硬件厂商/OME、独立软件开发商、云服务商、高校等等。在国内,阿里巴巴,腾讯以及联想都表示支持和接纳oneAPI。同时,英特尔也和包括清华大学、北京大学、中国科学技术大学等高校展开了合作计划。最新的合作中,为促进oneAPI在中国的生态发展,英特尔与中国科学计算技术研究所针对oneAPI的异构计算展开深入合作,共同建立中国首个oneAPI卓越中心。
《英特尔 oneAPI—打开异构新纪元》相关推荐
- ComeFuture英伽学院——2020年 全国大学生英语竞赛【C类初赛真题解析】(持续更新)
视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...
- ComeFuture英伽学院——2019年 全国大学生英语竞赛【C类初赛真题解析】大小作文——详细解析
视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...
- 信息学奥赛真题解析(玩具谜题)
玩具谜题(2016年信息学奥赛提高组真题) 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业.有一天, 这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的 ...
- 信息学奥赛之初赛 第1轮 讲解(01-08课)
信息学奥赛之初赛讲解 01 计算机概述 系统基本结构 信息学奥赛之初赛讲解 01 计算机概述 系统基本结构_哔哩哔哩_bilibili 信息学奥赛之初赛讲解 02 软件系统 计算机语言 进制转换 信息 ...
- 信息学奥赛一本通习题答案(五)
最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...
- 信息学奥赛一本通习题答案(三)
最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...
- 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题
第1章 快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章 素数 第 3 章 约数 第 4 章 同余问题 第 5 章 矩阵乘法 第 6 章 ...
- 信息学奥赛一本通题目代码(非题库)
为了完善自己学c++,很多人都去读相关文献,就比如<信息学奥赛一本通>,可又对题目无从下手,从今天开始,我将把书上的题目一 一的解析下来,可以做参考,如果有错,可以告诉我,将在下次解析里重 ...
- 信息学奥赛一本通(C++版) 刷题 记录
总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...
- 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离
首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...
最新文章
- 总结:DCIC算法分析赛完整方案分享!
- 函数 php_PHP回调函数及匿名函数概念与用法详解
- php接收不到ios值,php设置标签后,ios收不到,安卓可以收到
- Redhat Enterprise 6 下安装Oracle 11g报错
- mysql 错误编码_【分享】MySQl操作系统提示错误编码
- 第 16 章 模板方法模式
- java连接rabbitmq_Mac / Windows 下安装 RabbitMQ
- Unity之UGUI初探—按钮动画
- 会考flash中文字变形为三角形_flash逐帧课件动画制作有哪些详细教程
- Cadence, Orcad 教程
- 使用Liquid实现简单的数据交换
- 关于DSP28335CCS6编译时出现error #10099-D: program will not fit into available memory.
- gb2312简繁转换js兼容各种浏览器
- 网状结构(图)的基本知识——图的基本概念
- Spark2.0机器学习系列之2:Logistic回归及Binary分类(二分问题)结果评估
- python分钟转换小时_Python程序将秒转换为小时,分钟和秒
- 计算机教室学生上机须知,微机室上机须知
- python之斩根除草,破开隐藏文件的诡计
- python发红包最佳手气王_给自己发了两亿个红包后,我找到了手气最佳的秘密
- 正余弦函数及其反函数导数推导
热门文章
- 利用 MATLAB 和 DCRAW 处理数码相机 RAW 文件的完整流程
- 第十三届“认证杯”数学中国数学建模比赛赛后体会
- android textview setellipsize,android中给TextView设置属性ellipsize
- SiamFC代码讲解,训练过程讲解
- 1一10到时的英文单词_1到10的英语单词
- 灰狼/狼群算法优化支持向量机SVM分类预测matlab代码,支持多分类。 Excel数据格式 ,直接运行 。
- Matlab uicontrol 用法
- 最速下降法matlab全局最小值_最速下降法+Matlab代码
- H264码流中SPS PPS详解
- Matlab-有限单元法-2D梁单元的刚度矩阵组装(曾攀)