面向GPU微体系结构的汇编优化的研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:zhengxkun12
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
GPU的浮点峰值、访存带宽以及性能功耗比都超出同时代的CPU若干倍,成为加速计算密集型应用的引擎。然而,实际GPU程序的性能却远低于GPU的浮点峰值。比如,经过深度优化的稠密矩阵乘算法和卷积算法的CUDA实现在Kepler GPU上的浮点运算效率仍然都低于50%。综合分析相关工作和观察反汇编程序,本文发现CUDA编译器NVCC的代码生成存在一些性能问题。比如,编译器的寄存器分配存在寄存器bank冲突,编译器生成的控制码不能充分利用FFMA双发射等,这些因素导致GPU的资源不能被充分利用。这些因素在CUDA这种高级语言是无法解决的和改善的,只能在汇编层次上才能解决。但是多年来,由于NVIDIA厂商封闭惯性,只为GPU编程人员提供了CUDA和PTX编程模型,并未公开其汇编器。其内部工作人员使用汇编器优化少量的算法,而大部分的算法不能合理利用GPU微处理器的资源。  本文围绕NVCC生成代码效率低、Kepler GPU无可用汇编器和GPU指令编码未公开等问题,提出了一个方法(PerfFlow)来解决当前的困境:通过设计指令解码器得到指令编码,并基于破解后的指令构造汇编器;然后,设计汇编探测程序探测GPU的微架构特点,并把GPU微体系结构特点与性能关联起来;最后使用探测出的架构特性优化实际算法。由于稠密矩阵乘是线性代数库和近几年来兴起的深度学习应用的核心运算,是检验体系结构研究最直接有效的基准测试程序,本文以单精度矩阵乘算法(SinglePrecision General Matrix Multiply,简称SGEMM)为例展示了面向GPU微体系结构的算法优化。  本文的主要工作包括:  本文通过观察GPU ISA(Instruction Set Architecture)编码特点,提出基于反汇编器的操作码、修饰码和操作数编码的求解器InstSolver。该求解器可以自动求解任意64位定长的NVIDIAGPU架构的编码,只需要输入相应的反汇编代码即可。  在获取Kepler指令编码的基础上,本文实现了Kepler GPU的开源汇编器KeplerAs。基于汇编器的解决方案可以作为NVCC的补充,打破NVIDIA的封闭开发环境,为深度探测GPU的微架构和汇编优化提供了可能。  本文基于GPU汇编语言设计并标准化微基准测试程序(Bare-Metal-Microbenchmarks),并探测出微体结构的特性:如寄存器bank分布、双发射模式、指令通量和延迟、不同位宽的访存指令对于共享内存和全局访存带宽的影响。  根据GPU微体系结构特点,本文以SGEMM为例介绍了如何面向微体系结构的特征对算法进行深度优化。这些优化策略贯穿整个GPU架构,从寄存器bank、 CUDA核的双发射到共享内存和全局内存访存,再到指令调度。SGEMM的最终性能达到88%的效率,比cuBLAS快15%,其中双发射指令提升性能约一倍。同样的方法应用于卷积算法,卷积算法相对cuDNN提升了一倍左右,展示优化方法的通用性。汇编优化的kernel使得整体的卷积神经网络相对与NVIDIA的实现提升78%。本文建立了SGEMM在GPU上的Roofline性能分析模型,分析SGEMM的上界和性能瓶颈。本文的优化经验可以指导更多算法优化以及编译器的代码生成优化。
其他文献
该文主要研究多传感器数据融合在目标跟踪和属性参数估计中的应用.针对多传感器多目标跟踪系统的复杂性,论文采用距离方向扩展卡尔曼滤波算法对目标进行状态估计,该算法能方
近年来,嵌入式实时应用增长迅速,当用于分布式处理时,嵌入式计算由于资源受限而受到比桌面计算更大的挑战,如何在资源受限的环境中解决好分布式处理中的平台异构性问题,是本文所要
CSCW是一个面向分布式虚拟环境的新兴技术领域,主要研究协同者在完成共同任务过程中的协同控制机制及支持平台.CSCW在远程教育、视频会议、远程医疗、网络游戏等方面有着广泛
超分辨率荧光显微技术突破了传统光学显微镜不能识别200 nm以下生物结构的限制,使得人们可以通过光学显微镜窥探纳米世界,为药物的开发和疾病机理的探究带来了革命性的变化。因
Ad Hoc网是移动无线网络,无需基础设施、灵活、抗毁性强,适合特殊场合运用,已在军事、救险、商业等领域广泛应用.随着计算机网络技术的高速发展,网络的安全问题受到极大的关
通过对集群系统性能、体系结构及其网络负载平衡技术的研究,提供了一种使用大量商用服务器构建具有良好可扩展性和高可用性网络服务的基本构架。通过对Linux内核的TCP/IP协议栈
“专业邮件服务系统的设计与实现”是信息产业部“电子发展基金”支持的“网络多功能服务器”项目下的一个子课题。在Internet迅猛发展的今天,电子邮件已经成为信息交换的重要
舰船识别广泛应用于水上交通安全监管、海洋渔业管理以及军事侦察等方面,是天基遥感应用的研究热点之一。舰船识别的数据源主要包括合成孔径雷达(SAR)图像、可见光图像和红外
学位
云计算是一种基于互联网的IT服务提供方式,凭借高度的可扩展性和灵活性以及经济高效等优势,成为构建IT软硬件服务的首选。云数据中心作为云计算平台的基础设施包括计算、存储和