论文部分内容阅读
随着人们在科学计算、人工智能等领域对大规模数据计算的需求越来越高,使用图形处理器(GPU,Graphic Processing Unit)进行大规模并行计算正逐渐成为学术界和工业界的研究热点。建立一个能够全面反映GPU体系结构的GPGPU量化性能模型,从而评估特定并行算法如何高效映射到特定GPU硬件平台上就显得尤为重要。由于大多数商用嵌入式GPU的微结构参数都不公开,而针对传统GPU的GPGPU性能模型大多基于已知的GPU架构参数,且二者在架构上存在巨大差异,因此传统GPGPU模型无法直接适用于这些嵌入式GPU。 本文旨在提出一种基OpenCL微测试集的嵌入式GPGPU量化性能模型。本文参考传统GPGPU性能模型的主要影响因素及建立过程,设计了一套基于OpenCL的较全面的GPU微架构测试程序集,用于探测模型建立所需要的计算单元数、指令开销、内存结构、访存延迟等微架构参数,作为模型的输入;然后,基于微测试集的测试结果,本文对传统GPGPU程序的主要执行方式,包括计算访存重叠、分支执行等重新进行分析修正,简化了分支执行部分的模型表达;最后,考虑同步语句开销影响,增加同步操作性能建模,使得模型更为准确。在实验部分,论文通过两个常用算子:矩阵乘法和Sobel图像滤波器,在Mali-T628 GPU上来验证所提出模型的有效性。实验结果表明,本文所提出的模型估算的执行时间与实际硬件执行时间相比,准确度最高为86.1%,平均为81.2%,达到预期指标。 相比于传统GPGPU模型研究,本文首次针对未知架构参数的嵌入式GPU进行了架构建模,并证明了模型的有效性,帮助程序员更加高效地在嵌入式GPU上进行GPGPU程序的映射,程序员可以在进行GPGPU算法移植之前,借此评估模型估算GPGPU程序的执行性能。