-
题名基于异构编程模型的共性算子移植与并行优化
- 1
-
-
作者
马兆佳
邵恩
狄战元
马立贤
-
机构
处理器芯片全国重点实验室(中国科学院计算技术研究所)
中国科学院大学
中科南京信息高铁研究院
-
出处
《计算机研究与发展》
北大核心
2025年第4期1017-1032,共16页
-
基金
国家重点研发计划项目(2021YFB0300202)
国家自然科学基金项目(62102396)
+4 种基金
北京市科技新星计划项目(Z211100002121143,20220484217)
中国科学院青年促进会项目(2021099)
CCF-蚂蚁科研基金项目(CCF-AFSGRF20230207)
天津市科技计划项目(24ZXKJGX00060)
中国科学院计算技术研究所创新课题项目(E461030)。
-
文摘
GPU作为构造大规模超算系统的核心计算部件,向着体系结构多样化和异构化的方向发展.来自不同芯片厂商的GPU加速器具有差异较大的体系结构设计.加速器类型和编程模型多样化是构建大规模超算系统的重要技术趋势.多样化加速器要求开发者为多种硬件平台提供高性能共性算法库软件,然而这也导致了算法库软件重复开发问题.为降低重复开发成本,统一编程模型SYCL(system-wide compute language)应运而生,并适配了多种硬件平台.尽管如此,在不同硬件上,SYCL的性能仍不及各自原生编程模型.因此,需要进一步优化SYCL的性能以将目前成熟完备的CUDA(compute unified device architecture)编程思路和高性能程序应用到SYCL中.基于软硬件协同设计,提出了paraTRANS方法,该方法是面向跨异构编程模型SYCL代码移植过程中共性算子优化工具,并在不同场景下给出了对移植得到的SYCL的GEMM(general matrix multiplication)进行优化的方法.评测了paraTRANS优化后基于SYCL的GEMM算子在NVIDIA RTX 3090和AMD MI100上的性能情况.结果显示,在NVIDIA RTX 3090上,paraTRANS达到了96.95%CUDA原生算子的性能水平;在AMD MI100上,则接近CUDA在NVIDIA RTX 3090上硬件峰值百分比(100.47%)所表现出来的性能水平.这些结果表明成功地将原生高性能CUDA算子代码移植并进一步优化至SYCL环境中,并为未来类似工作提供新颖且有效的优化思路.
-
关键词
SYCL
跨异构体系结构
代码移植
GEMM
并行优化
-
Keywords
SYCL
cross heterogeneous architecture
code migration
GEMM
parallel optimization
-
分类号
TP312
[自动化与计算机技术—计算机软件与理论]
-