2021 年 11 月 12 日,在第三届中国超级算力大会(ChinaSC 2021)上,英特尔宣布与中国科学院计算技术研究所(以下简称“中科院计算所”)结成战略合作伙伴关系。英特尔和中科院计算所将共同建立中国首个 oneAPI 卓越中心,以扩大oneAPI对中国本土国产硬件的支持及使用 oneAPI 来开发全栈式开源软件。未来,双方将主要在以下方面进行合作:
- 扩展 oneAPI 以支持更多硬件:基于开放的 oneAPI 规范,双方将扩展 oneAPI 统一编程框架,从而实现对中国本土加速器的支持。这个框架将简化并行软件的开发、迁移,充分挖掘不同硬件性能。并且,双方还将共同推广合作建立的开源软件项目,并参与中国的行业标准建设。
- 课程教学与开发:双方将开展围绕 oneAPI 为核心的课件开发,并把 oneAPI 内容添加到相关在授课程以及学生动手实验中。学生可注册oneAPI DevCloud并完成实验,开发新的 oneAPI 应用以丰富学生动手实验案例库。
- 探索智能交通典型应用情况下,加速计算的配置及其优化:基于共同的工作成果,中科院计算所以智能交通领域的多摄像头输入智能分析和实时车路协同控制作为典型应用开展研究,目标是通过赋能智能车辆来提高高速公路的安全性和运行效率。双方将共同推动智能交通+算力互联网示范应用建设,携手推进相关标准。
英特尔在 2020 年 12 月份发布了 oneAPI 的正式版本,随后每季度都有 oneAPI 的产品升级。到目前为止,英特尔最新的 oneAPI 版本已经支持英特尔的最新硬件,包括对 CPU、GPU、FPGA 的优化支持。
oneAPI 是一个针对异构计算的编程模型框架。oneAPI DPC++的中间语言和运行时间(run-time)都采用了 LLVM。如果其他的语言使用了相同的方案,那么 oneAPI 便可以和其他编程语言无缝协同。英特尔把一些复杂的硬件和不同的编程语言封装在一个中间层里,开发者们只需要关心问题本身的解决,而不用纠结语言编程技巧。这也是现在编译器的一个技术方向。
第一版 oneAPI 主要解决了异构编程对不同硬件需要不用源代码库、工具链和库函数的问题。有了 oneAPI 之后,一次性写完的代码可以通过 DPC++编译器及不同的函数库运行在不同的硬件上,极大地简化了应用程序层面开发者们的工作。
另外,英特尔也希望通过 oneAPI 去简化云计算方面的工作量。通过对分布式计算、微服务、网络和全局内存的支持,开发者不必关心内存是在本地还是云上。目前,英特尔在努力将云计算需要的技术封装到 oneAPI 中。
在英特尔软件和先进技术事业部副总裁兼中国区总经理谢晓清看来,oneAPI 在今年 12 月份即将发布的 oneAPI 2022,便是全新升级的 2.0 版本。新版本拥有九百多项新功能,通过统一的 C++/SYCL/Fortran 编译器和 Data Parallel Python 为 CPU 和 GPU 增加了跨架构的软件开发能力。
oneAPI 只是英特尔“拥抱开发者”理念一个起点。“英特尔要走到开发者里面去,而不是把开发者拉到英特尔这边来”,这就是英特尔强调的“走进开发者”理念。“英特尔还需要进一步发掘当代开发者在使用 oneAPI 或英特尔其他工具时,需要英特尔解决的问题。”谢晓清说道。
目前 ,oneAPI 已实现基本开源。并且,在英特尔开发者专区(Developer Zone)上面的大部分软件都开放了源程序,只有极小部分仍然只提供二进制代码。