|
Frontiers of Information Technology & Electronic Engineering
ISSN 2095-9184 (print), ISSN 2095-9230 (online)
2020 Vol.21 No.9 P.1285-1301
Optimizing non-coalesced memory access for irregular applications with GPU computing
Abstract: General purpose graphics processing units (GPGPUs) can be used to improve computing performance considerably for regular applications. However, irregular memory access exists in many applications, and the benefits of graphics processing units (GPUs) are less substantial for irregular applications. In recent years, several studies have presented some solutions to remove static irregular memory access. However, eliminating dynamic irregular memory access with software remains a serious challenge. A pure software solution without hardware extensions or offline profiling is proposed to eliminate dynamic irregular memory access, especially for indirect memory access. Data reordering and index redirection are suggested to reduce the number of memory transactions, thereby improving the performance of GPU kernels. To improve the efficiency of data reordering, an operation to reorder data is offloaded to a GPU to reduce overhead and thus transfer data. Through concurrently executing the compute unified device architecture (CUDA) streams of data reordering and the data processing kernel, the overhead of data reordering can be reduced. After these optimizations, the volume of memory transactions can be reduced by 16.7%–50% compared with CUSPARSE-based benchmarks, and the performance of irregular kernels can be improved by 9.64%–34.9% using an NVIDIA Tesla P4 GPU.
Key words: General purpose graphics processing units, Memory coalescing, Non-coalesced memory access, Data reordering
1华中科技大学大数据技术与系统国家地方联合工程研究中心,中国武汉市,430074
2华中科技大学服务计算技术与系统实验室,中国武汉市,430074
3华中科技大学集群与网格计算实验室,中国武汉市,430074
4华中科技大学计算机科学与技术学院,中国武汉市,430074
摘要:通用图形处理器(GPGPU)可大大提升规则应用的计算性能。然而,很多应用中存在非规则内存访问模式,大大限制了GPU的性能优势。近年来,一些研究提出解决方案来移除静态非规则内存访问。然而,利用软件消除动态非规则内存访问仍然面临严峻挑战。本文提出一种纯软件解决方案用于消除动态非规则内存访问,尤其是间接内存访问,无需硬件扩展和离线分析。提出数据重组和索引重定向以减少内存访问次数,从而提高GPU内核性能。为提高数据重组效率,卸载重组数据操作至GPU以降低开销并传输数据。通过并发执行数据重组和数据处理内核的统一计算设备架构(CUDA)流,可降低数据重组开销。完成这些优化后,相比于CUSPARSE基准测试,使用该方法GPU内核的内存数据传输减少了16.7%-50%;同时,NVIDIA Tesla P4 GPU上的内核性能提高了9.64%-34.9%。
关键词组:
References:
Open peer comments: Debate/Discuss/Question/Opinion
<1>
DOI:
10.1631/FITEE.1900262
CLC number:
TP319
Download Full Text:
Downloaded:
5974
Download summary:
<Click Here>Downloaded:
1429Clicked:
5091
Cited:
0
On-line Access:
2024-08-27
Received:
2023-10-17
Revision Accepted:
2024-05-08
Crosschecked:
2020-08-10