至强秘笈 | 2000万程序猿+媛的选择:见证英特尔至强软实力

架构师技术联盟

共 5184字,需浏览 11分钟

 · 2021-09-27


导读


2000 万,这是整个重庆的常住人口数量[1]。2000 万,这也是一家公司——英特尔——的开发者生态的规模,遍布全世界[2]。多年来,英特尔一直提倡开源和开放,将面向英特尔架构优化、可帮助最终应用负载充分利用英特尔硬件平台性能和功能的软件提供给成千上万开发者,还有他们服务的、创办的公司、组织,让大家可以第一时间接触快速发展的技术,探索新的市场机会,塑造一个充满机遇的世界。


英特尔之所以这么做,是因为作为以硬件见长的公司,同时还深知软硬结合的力量。英特尔发现:对于全新硬件架构的每一个数量级的性能提升潜力,软件能带来超过两个数量级的性能提升。[3]尤其是进入人工智能时代后,软件所能释放出的潜力更加惊人。以英特尔的硬件为例,从至强® E5 v4到 第一代英特尔® 至强® 可扩展处理器,软件与硬件配合,可带来高达277倍的机器学习性能提升;从 第一代英特尔® 至强® 可扩展处理器到第二代英特尔® 至强® 可扩展处理器,AI 性能又增长达28倍,其中通过硬件提升 4 倍左右,剩下全部来自软件优化。[4]


因此,英特尔为开发者,特别是数据中心或企业计算领域开发者提供的软件,一直都是侧重于优化,旨在释放硬件的性能潜力,而且是自上而下,从应用、到操作系统、再到基础设施的全面优化,这些优化绝不是做做样子的表面优化,而是深入到算法等系统最底层的优化,同时满足开发者最迫切的需求。这正是英特尔“软件先行”战略的核心体现。


让我们从应用和基础设施两个层级,看看英特尔为程序猿+媛和攻城狮们提供了哪些趁手的工具。


基础设施算力优化,从容应对千变万化



随着需要处理的数据量越来越大,应用的性能优化越来越重要。与此同时,应用还要面对物联网 、智能边缘、数据中心等众多复杂的软硬件运行环境。因此,在硬件支撑的基础上,使用优化工具测试应用程序性能,并针对特定瓶颈优化,比如加入编译选项,或者替换数学库,这样不仅可以提高开发生产效率,还能实现计算机软硬件的兼容性与扩展性,推动行业创新。


英特尔® oneAPI Base & HPC Toolkit,作为英特尔® Parallel Studio XE的升级版本, 是可以实现上述要求的核心开发工具套件 (参考: https://software.intel.com/oneapi ). 它有助于实现基础设施层面的算力优化,内置最新的矢量化、多线程、多节点和内存优化技术,能尽力释放最新英特尔处理器、平台以及集成硬件的出色性能和功能优势。英特尔® oneAPI Base & HPC Toolkit 提供了集成开发环境和开发工具套件,帮助开发人员拥有强大、一致的编程体验,同时可使用 C、C++、Fortran 和 Python 等多种语言编写更快的并行代码,并基于多线程、多进程发现隐藏问题并解决问题,适合用来开发企业、云端、HPC和AI解决方案[5]


为了实现基础设施算力优化,英特尔® oneAPI Base & HPC Toolkit 还集成了英特尔®  C++ 编译器。在英特尔至强处理器平台上,用它编译、构建的 Linux 应用,比其他编译器性能可最高提升 60%[6]。同时,英特尔®  C++ 编译器还可与主流第三方编译器、开发环境和操作系统无缝集成,编译生成高性能Windows、Linux 和 MacOS 应用。



没有调优过代码的攻城师算不上程序猿+媛。不过,代码调优往往也让码农最头痛。如果没有工具辅助,单靠经验或者干脆蒙头硬上,很多时候往往适得其反。这正是英特尔® VTune™ Profiler可视化性能分析工具的用武之地。它就像一个城市中无处不在的交通摄像头,哪里顺畅,哪里拥堵,一览无余。


VTune™ 使用图形化界面分析程序性能,可准确剖析 C、C++、Fortran、Python、Go、Java 以及多种语言组合,能帮助开发人员分析系统和应用程序热点,结合程序源码和汇编指令完成细粒度性能分析。借助基于微架构的性能分析,VTune™  不仅可以快速定位程序运行的瓶颈,还能分析瓶颈具体原因,提供多维度数据优化应用在处理器、内存和存储中的运行性能。如此好用的工具,当然也已经集成在英特尔® oneAPI Base & HPC Toolkit之中。[7]


值得一提的是,英特尔® oneAPI Base & HPC Toolkit,包括英特尔® C++ 编译器,VTune™ Profiler,目前都已经变身成为英特尔® oneAPI 的一部分,而oneAPI 作为一个统一的、简化的编程模型,其使命是简化跨架构的开发过程,支持广泛的行业生态系统,实现英特尔的“软件先行”战略目标。


AI和分析应用优化

端到端数据处理不在话下


除了基础设施层面的优化之外,针对越来越普遍的深度学习、大数据分析和机器视觉等人工智能应用,英特尔提供了程序开发库,同样成为攻城师工具箱中的必备利器。


英特尔数据分析加速库 oneDAL,面向数据分析的所有阶段:预处理、转换、分析、建模、验证和决策制定,提供高度优化的算法构建模块。具体来说,有如下优势:

1

同样的计算资源可以分析更大的数据集,帮助应用程序更快地提供准确预测;、

2

优化数据摄取和算法计算获取最高性能;

3

支持常见的数据平台,支持离线、流和分布式使用模型;

4

提供高性能函数,可对接多种数据来源。[8]


为了在英特尔架构上让深度学习框架执行更快,英特尔提供了 oneDNN,即面向深度神经网络的数学核心函数库。该函数库包含高度矢量化和线程化的构建模块,支持构架深度神经网络,已经拥有广泛的深度学习研究、开发和应用生态系统。把它“嵌入”TensorFlow, Pytorch等目前主流的AI框架,就能把它们改造成面向英特尔架构优化的AI框架,而且这些AI框架还可以集成到一个基于Spark、Ray和Flink的统一的大数据分析与 AI 开源平台——Analytics Zoo——之上,轻松实现端到端的数据处理,从大数据的处理和分析,到分布式训练或推理,大大简化了深度学习应用的开发和部署。值得一提的是,Analytics Zoo 也是由oneAPI提供支持的(Powered By oneAPI)


除了支持和优化数据的端到端处理,英特尔旗下原来还有一个专门加速多媒体,特别是影像处理的优化软件分支,其代表当属oneVPL,它可借助专门的加速库,如IPP库提供很多图像处理的加速实现。


随着人工智能在各个行业和领域的落地和实践,从智慧城市到智能制造,有越来越多的企业也在借助英特尔这些加速多媒体应用的软件工具来铺助提升AI推理或训练所需的视频、图像数据的处理效率。当然,这只是这些软件工具的“兼职”工作,它们的主要目的,还是为了实现更高效的多媒体处理,为此,它们不但支持多种视频编码标准,加速视频编解码性能,还能帮助开发者自动选择最优软/硬件编解码方式和内存选用类型,从而支持硬件加速,同时可以做到多路视频处理,至于裁剪、缩放、去隔行、颜色转换、合成与降噪、锐化等多种常见任务,更是不在话下。


上文提及的众多优化软件工具中,oneDAL,oneDNN和oneVPL也已经容纳在 oneAPI 之中,它们的全称分别是 oneAPI Data Analytics Library、oneAPI Deep Neural Network Library 和 oneAPI Video Processing Library。[9]


打开电脑和头脑,收下这个大礼包


很多人知道英特尔,是因为它以硬件闻名。大部分人不知道的是:英特尔公司拥有 15000 多名软件工程师,而且深入开发者生态领域超过 20 年。[10]多年来,英特尔参与并影响众多标准制定组织,具备了跨基础架构、网络、操作系统的开发经验,提供大量开发工具、SDK,本文中所提及的只是一鳞半爪。


就像上面不断强调的,英特尔的这些经验、工具、软件,已经汇聚为一个统一的编程模型——oneAPI,它提供了通用、开放的编程体验,让开发者可以自由选择架构,无需妥协性能,同时也大大降低了使用不同的代码库、编程语言、编程工具和工作流程所带来的复杂性。而且更为重要的是,oneAPI这些丰富多样、功能强大的工具都是免费提供的,所有程序猿+媛们都可以直接访问oneAPI网站下载到这些工具的最新版本!


有了 oneAPI 这样的一站式工具,再想开发什么样的应用时,就可以说:限制我们的,只能是我们的想象力。那么,面对如此丰富而强大的大礼包,你准备好了吗?


[1] 我国目前总共有六座城市实际人口超过2000万,有两座在珠三角地区

https://www.sohu.com/a/403542761_794891#:~:text=%E5%8C%97%E4%BA%AC%E3%80%81%E4%B8%8A%E6%B5%B7%E5%92%8C%E9%87%8D%E5%BA%86%E6%98%AF,%E6%95%B0%E9%87%8F%E8%BE%BE2100%E5%A4%9A%E4m,%B8%87%E3%80%82


[2] oneAPI 介绍说明 一个统一的、简化的编程模型将定义未来应用程序开发的十年

https://newsroom.intel.cn/news-releases/press-relase-2019-nov-18-03/#gs.x67n42


[3] 英特尔首次向其投资者谈论一个不为人知的“秘密”

https://www.leiphone.com/news/201905/61zDJJhD0gR0dezJ.html


[4] 为什么说英特尔是一家“软件公司”?

https://nb.zol.com.cn/731/7315612.html


[5] 并行超算云,用超算更省心

https://www.paratera.com/marketNews/marketDetail41.html


[6] Intel® oneAPI DPC++/C++ Compiler

https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/dpc-compiler.html


[7] 并行超算云,用超算更省心

https://www.paratera.com/marketNews/marketDetail41.html


[8] 并行超算云,用超算更省心

https://www.paratera.com/marketNews/marketDetail41.html


[9] Priority Support for Intel® oneAPI Base & HPC Toolkit

https://software.intel.com/content/www/us/en/develop/tools/oneapi/commercial-base-hpc.html


[10] oneAPI 介绍说明 一个统一的、简化的编程模型将定义未来应用程序开发的十年

https://newsroom.intel.cn/news-releases/press-relase-2019-nov-18-03/#gs.x6bj3d


* 本文内容及配图均为“英特尔商用频道”的原创内容。该公众号的运营主体拥有上述内容的著作权或相应许可。未经该运营主体书面同意,请勿转载、转帖或以其他任何方式复制、发表或发布上述内容。如需转载上述内容或其中任何部分,请留言联系。


英特尔、英特尔标识、以及其他英特尔商标是英特尔公司或其子公司在美国和/或其他国家的商标。

©英特尔公司版权所有。

* 文中涉及的其它名称及商标属于各自所有者资产。


延伸阅读

★ 至强秘笈 | AVX-512,加速密集型计算任务的“专用车道”

 至强秘笈 | DL Boost,以低精度成就高效率的魔术师

★ 至强秘笈 | AI框架如何压榨CPU的深度学习加速潜力

 至强秘笈 | 英特尔® 傲腾™ 持久内存:重构计算系统的“社区图书馆”

★ 至强秘笈 | 英特尔® 至强® 可扩展平台,由内至外,加速智能时代

 至强秘笈 | Analytics Zoo,打通大数据平台与AI应用的直通车


长按识别二维码,查看更多精彩内容!


浏览 44
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报