论文部分内容阅读
随着“大数据”时代的到来,基于 GPGPU打造的众核计算系统成为了现阶段数据中心发展的趋势。GPGPU具有强大的多线程能力、高吞吐率、低成本、体积小等优点,能显著提高数据中心的计算能力。但是随着性能的不断提升,基于 GPGPU众核集群系统的数据中心面临消耗海量能源的问题。为了适应未来社会低能耗、可持续性的发展目标,对数据中心的能耗大户 GPGPU进行分析,找寻出影响性能的计算特征,帮助数据中心更好地进行节能减排的优化成为了当前研究的热点。目前,众多学者已从GPGPU的频率、GPGPU的计算时间等各个角度分析了与 GPGPU性能功耗的关系,建立了相应的预测模型,但是这些研究仍存在一定的局限性。为了更加全面有效的分析影响 GPGPU性能的计算特征,本文将机器学习的方法融入到计算特征的获取中,以便更好为 GPGPU的节能减排提供建议。 本文的主要工作如下: (1)探讨了 GPGPU的计算功耗特征分析的相关技术。介绍了现有的一些GPGPU性能功耗预测模型,在总结前人研究成果的基础上,分析了现有研究的不足之处。 (2)分析了影响GPGPU计算性能的因素。分别从GPGPU程序的指令构成和GPGPU体系结构两方面研究了影响GPGPU计算性能的因素。研究结果表明,程序中的片外访存指令、不同类型的计算指令、GPGPU体系结构中的计算单元数目、寄存器数目、Cache结构、线程配置是影响GPGPU性能重要因素,为后续GPGPU计算特征的获取提供了有力的支持。 (3)提取了GPGPU的关键计算特征。将影响GPGPU性能因素进行多种组合,通过 GPGPU模拟器中的性能计数器收集了不同组合因素下的计算特征数据。通过将关键特征提取的问题成转化成机器学习中属性约减问题,采用粗糙集中属性约减方法来对 GPGPU的关键特征进行提取,构建了关键特征样本库。针对粗糙集处理连续数据能力有限的问题,提出了一种粗粒度聚类策略对数据进行离散化处理。提取结果表明,GPGPU中的Cache结构的命中率,片外存储器的读写次数和每个线程中的各类计算指令执行数目是影响 GPGPU计算性能的重要特征。 (4)实现了基于计算特征的 BP神经网络性能预测模型。分别将计算特征数据和关键计算特征数据输入至预测模型中,对比了两种不同数据的预测相对误差。实验结果表明,预测模型对于计算特征数据的平均预测相对误差为8.21%,对于关键特征的平均预测相对误差为6.44%,所得结果验证了关键特征提取的准确性。针对预测模型存在的问题,采用粒子群算法对模型进行了优化。优化后的模型在训练时间上减少了25%,预测准确度上提高了2%,更适合 GPGPU计算性能的预测。 本文的成果主要体现在两方面: (1)将机器学习的方法应用于GPGPU的性能特征分析领域,有效的获取了影响性能的关键特征。 (2)针对提取出的关键特征,建立了基于 BP神经网络的性能预测模型并对模型存在的问题进行了优化改进。