题目:面向OpenCL的GPGPU上基准测试程序集的研究与实现
● 摘要
基准测试程序集是选择一组有代表性的基准应用测试程序,对计算机软硬件系统的某类性能进行全面的评测。随着通用图形处理器(GPGPU)的发展,GPU通用计算在计算机领域得到了广泛的应用。OpenCL是一种面向包括GPGPU、CPU、DSP等多种处理器芯片在内的异构通用并行编程框架,包含一种类C的并行编程语言和运行平台。与CUDA相比,OpenCL得到了更多厂商的支持,具有广阔的应用前景。然而目前国内外仍缺乏面向GPGPU和OpenCL的基准测试程序集,使得芯片厂商和OpenCL软件平台开发者缺乏一种客观的性能度量手段,因此利用OpenCL语言开发一套比较完善的GPGPU的基准测试程序集,能够有效评测GPGPU和OpenCL平台的性能将具有十分重要的意义。本文旨在研究如何设计与实现一套较为完善的面向OpenCL的GPGPU的基准测试程序集,其具体研究内容为构成基准测试集的各个测试用例的设计与实现。本文首先分析了GPGPU测试集的研究现状,总结了这些测试集存在的一些问题,明确了研究目标,之后阐述了GPGPU通用计算相关知识,并且介绍了OpenCL的相关理论。然后详细地描述了构成本基准测试集的一系列小型测试用例的设计与实现,它们主要包括数学函数GFLOPS的性能、存储体系、分支转移机制、GPU可扩展性和原子函数等测试用例。并且将这些测试用例运行在不同的GPU平台上,对实验结果进行了深入的分析与研究。最后,本文选择了在计算机视觉领域广泛应用的SURF算法,对其各个模块进行了简单分析介绍,然后基于OpenSURF开源项目,利用OpenCL语言对SURF算法进行并行化的改写和优化,将其作为应用程序测试用例加入测试集,实现并完善了这套面向OpenCL的GPGPU的基准测试程序集。
相关内容
相关标签