由业界领先的公司组成的开放性联盟Khronos Group创建图形和计算互操作性标准,宣布批准并公开发布SYCL 2020临时规范。
SYCL 是基于C ++的标准异构并行编程框架,可用于在各种处理器体系结构(包括CPU,GPU,FPGA和AI处理器)上加速高性能计算(HPC),机器学习,嵌入式计算和计算密集型桌面应用程序。该 SYCL 2020临时规范 是今天让公众可获得的 反馈 最终定稿规范和释放SYCL 2020采用者计划,这将使实施者正式在今年年底符合的,初步预计从之前开发者和实施者。
SYCL 2020是一种免版税的开放标准,它通过一种富有表现力的领域特定语言,紧凑代码和简化的通用模式(例如“类模板参数推导”和“推导指南”)来提高程序员的生产力,同时保持与以前版本的显着向后兼容性。SYCL 2020基于C ++ 17,并且包括新的编程抽象,例如统一共享内存,精简,组算法和子组,以支持跨各种硬件体系结构的高性能应用程序。
“ SYCL 2020是向所有人普及C ++异构编程的重要一步,” Codeplay副总裁兼SYCL工作组主席Michael Wong说。“它支持从HPC超级计算中心到功能强大的机器学习框架,再到嵌入式和台式PC上的创意和专业应用程序,应有尽有。这些现实世界的见解将使SYCL工作组实现我们与ISO融合的长期梦想,即通过许多公司在众多处理器的合作下以开放标准将并行异构编程引入现代C ++。”
在发布SYCL 2020规范的同时,随着编译器,运行时,库和工具的开发不断增加,SYCL生态系统也在不断发展。英特尔DPC ++中提供了SYCL 2020的beta版实施 。 符合Codeplay的ComputeCpp SYCL 1.2.1的实现包括选定的SYCL 2020功能作为扩展,并且随着时间的推移会添加更多功能。两种实现均基于Clang开源编译器框架。开发人员可以立即下载实施并尝试SYCL 2020功能。
在 阿贡实验室(Argonne National Laboratory),正在构建使用Intel芯片的Exascale超级计算机系统,新的实现方式正在寻求使开发人员能够使用SYCL轻松地将C ++应用程序扩展到加速器集群。在欧洲, Cineca 超级计算中心使用基于SYCL的Celerity分布式运行时系统对配备3,920个GPU的新Marconi100集群进行编程,并在Top500(2020年6月)中排名第9。
SYCL 2020继续利用OpenCL作为后端目标来扩展到各种处理器加速器体系结构,但是最新的SYCL实施方案正在添加其他后端,从而为SYCL开发人员提供了增强的部署灵活性。