摘要
随着智能计算和大数据应用的发展,人们对GPU等加速部件的需求不断增长。计算软件栈比如CUDA、OpenCL软件栈是能充分发挥GPU硬件性能的关键。考虑计算软件栈未来在国产基础软硬件平台(比如飞腾CPU和麒麟操作系统)上的可移植性和适配性,重点研究OpenCL开源计算软件栈。测试分析OpenCL应用在不同平台上的表现,评估应用在不同OpenCL软件栈上(比如Mesa、ROCm等)进行GPU计算的表现,评估软件栈中驱动、内核等对GPU计算的影响,并且整个测试涵盖了编译、数据传输和内核执行等OpenCL计算各个阶段的时间开销。经过测试评估发现,国产平台更迫切也更适合使用GPU进行加速计算,ROCm是比较理想的OpenCL开源软件栈,有较好的性能和稳定性,并且与闭源软件栈相比存在一定的优化空间。
With the development of intelligent computing and big data applications,the demand for accelerators such as GPU is increasing.Computing software stacks such as CUDA and OpenCL software stacks are the key to making full use of GPU hardware performance.Considering the portability and implementation of software stacks on domestic fundamental OS and hardware platforms(such as Phytium CPU and Kylin OS)in future,this paper focuses on open-source OpenCL software stacks.The performance of OpenCL applications on different platforms is tested and analyzed.The performance of GPU computing on different OpenCL software stacks,such as Mesa,ROCm,etc.,is evaluated.The impact of drivers and kernels in the software stack on GPU computing is evaluated.The entire test covers the time overhead of various stages of OpenCL calculations such as compilation,data transmission,and kernel execution.The test and evaluation found that it is more urgent and more suitable to use GPU for accelerated computing on domestic platforms.ROCm is an ideal OpenCL open source software stack with better performance and stability,and can be further optimized compared with close-source software stacks.
作者
朱浩
周博洋
卢雪山
杜溢墨
ZHU Hao;ZHOU Bo-yang;LU Xue-shan;DU Yi-mo(Defense Innovation Institute,Academy of Military Sciences,Beijing 100000;College of Computer Science and Technology,National University of Defense Technology,Changsha 410073;PLA Air Force Logistics Department,Beijing 100000;Troop 31008,Beijing 100091,China)
出处
《计算机工程与科学》
CSCD
北大核心
2021年第12期2105-2114,共10页
Computer Engineering & Science
基金
国家自然科学基金(61802416,61972408,61902407)。
关键词
OPENCL
计算软件栈
GPU计算
国产基础软硬件平台
OpenCL
computing software stack
GPU computing
domestic fundamental software and hardware platform