收藏本站
收藏 | 手机打开
二维码
手机客户端打开本文

面向GPU计算平台的若干并行优化关键技术研究

贾海鹏  
【摘要】:随着计算能力和可编程性的不断增强,GPU被越来越多的应用开发人员用作性能加速器以提高程序性能。然而,如果没有经过精心优化,很难在GPU上实现理想性能。这是因为GPU程序的优化工作已经从硬件设计者转移到应用开发人员手中。而GPU程序的性能优化是一个非常困难的过程,其实质是实现算法特性向底层硬件特征的高效映射。一方面这个过程需要对GPU底层硬件有着深入的认识,而现代GPU架构的日益多样性,无疑加剧了本已困难的优化工作;另一方面,移植到GPU上的应用的程序特性也日益多样化,从整体上看,这些应用可分为规则应用和非规则应用两大类。不同的程序特性在不同硬件架构上具有不同的优化方法和策略。为简化GPU程序的性能优化工作,使应用开发人员能够更加容易的实现高性能GPU程序。针对不同的应用特点,本文的主要工作可分为两部分: 针对规则应用,我们提出性能优化链的概念,并根据GPU计算和访存的特点,将性能优化链划分为绝对性能优化链和相对性能优化链两类。通过引入Roofline模型,实现了性能优化链的可视化,建立了针对特定硬件平台的可视化GPU程序性能优化指导模型:GPURoofline。该模型可通过提供性能信息来确定GPU程序在特定硬件平台上的性能瓶颈以及应选择的优化策略和方法,以此来指导应用开发人员特别是对GPU底层架构不熟悉的应用开发人员更加容易的实现高性能GPU程序。本文通过三个具有不同计算密度和程序特性的典型应用验证了GPURoofline模型的可用性和正确性。 针对非规则应用,以Viola-Jones人脸检测算法为例,引入了非规则应用在GPU上实现和优化的五大关键技术:粗粒度并行、Uberkernel、Persistent Kernel、本地队列和全局队列。并通过性能特征参数的定义和抽取,完成了可调优GPUkernel的初步实现,并以此实现了Viola-Jones人脸检测算法在不同GPU平台上的性能移植。实验表明,经过优化的Viola-Jones人脸检测算法比OpenCV库中同样经过精心优化的CPU版本在AMD HD5850GPU、AMD HD7970GPU和NVIDIA C2050GPU三个GPU平台上分别达到了5.19~27.724、6.468-35.080和5.850~28.768的性能提升。 本文的创新点如下: (1)分析和比较当前主流GPU架构的异同,提出了GPU程序性能优化的三大有效途径:提高片外带宽利用率,提高计算资源利用率和数据本地化。 (2)提出算法计算密度和硬件计算密度两个概念,并通过这两个概念的比较将GPU kernel分为访存密集型和计算密集型两大类。提出并构建针对特定硬件平台的性能优化链。并根据访存和计算优化的特点,将性能优化链划分为绝对性能优化链和相对性能优化链两类。 (3)构建完成了一个可视化的GPU性能指导模型:GPURoofline.通过引入Roofline模型实现了性能优化链的可视化,以一种更加直观的形式指导GPU程序的优化。 (4)引入非规则应用在GPU实现和优化的五大方法和策略:粗粒度并行、Uberkernel、Persist Thread、本地队列和全局队列。并通过Viola-Jones人脸检测算法说明了这五种方法的具体应用方式。最后,通过对性能参数的定义和抽取,初步完成了可调优kernel的实现,验证了在不同GPU硬件平台间实现性能移植的可能性。


知网文化
【相似文献】
中国期刊全文数据库 前20条
1 谢晓兰,韩可轶,王林;提高Java程序性能的若干方法[J];计算机与现代化;2005年08期
2 郑小蓉;;高职学院学生信息管理系统性能优化问题分析[J];中国新技术新产品;2009年22期
3 王晓东;;浅谈计算机性能优化技术中的问题及对策[J];计算机光盘软件与应用;2014年03期
4 王玉兰;“九七”计算机系统的性能优化[J];电信技术;2002年02期
5 马晶;;信息系统中数据库的性能优化[J];科技信息;2010年14期
6 张淑坤;;工艺流程改进在告警采集系统性能优化中的应用[J];计算机光盘软件与应用;2013年02期
7 刘军,杨卫春;九七系统性能优化技术(二)[J];江西通信科技;2001年04期
8 陈苏蓉;朱晓辉;;SQL Server 2008性能优化研究[J];电脑知识与技术;2009年34期
9 靳春霞;;计算机系统性能优化研究[J];河南科技;2010年15期
10 徐跃伟;;网上购物系统的实现及性能优化[J];计算机时代;2012年01期
11 韩晓云;黄灿;张莫;吴猛;施康;;一级部署系统性能优化研究[J];电力信息与通信技术;2013年07期
12 徐新春;计算机网络性能优化方法的探讨[J];新疆职工大学学报;2000年01期
13 曾森;范玉顺;黄双喜;;支持业务过程性能优化的多过程建模方法研究[J];计算机集成制造系统;2008年08期
14 沈涛;;校园无线局域网性能优化途径之初探[J];电脑知识与技术;2006年35期
15 韩艳;;浅析Windows Server 2003自动性能优化功能[J];数字技术与应用;2012年05期
16 李雪莹,刘宝旭,陈宇,许榕生;宽带网络监控技术性能优化的研究与实践[J];通信学报;2004年07期
17 孙相征;张云泉;王宣强;王磊;;数值软件自适应性能优化搜索过程评价技术研究[J];计算机研究与发展;2010年04期
18 习博;方彦军;;基于排队论的嵌入式Web系统性能优化[J];计算机工程;2007年17期
19 圆心;;前端性能优化的思考[J];程序员;2010年10期
20 王卫;袁玮;;BSS系统出帐性能的提升[J];硅谷;2011年17期
中国重要会议论文全文数据库 前10条
1 姚杰;;宝钢不锈钢系统数据库性能优化方案[A];中国计量协会冶金分会2007年会论文集[C];2007年
2 代桂平;殷保群;奚宏生;周亚平;;受控M/G/1排队系统的性能优化[A];第二十二届中国控制会议论文集(下)[C];2003年
3 李彦;王屹;徐继明;;ERP系统的性能优化[A];全国炼钢连铸过程自动化技术交流会论文集[C];2006年
4 赵海波;杨昭;方筝;徐振军;;燃气压缩式热泵系统全年季节性能优化[A];中国制冷学会2007学术年会论文集[C];2007年
5 高明星;;DB2数据库应用性能优化问题浅谈[A];科技、工程与经济社会协调发展——中国科协第五届青年学术年会论文集[C];2004年
6 奚宏生;唐昊;殷保群;周亚平;;Markov控制过程在紧致行动集上的性能优化[A];第二十一届中国控制会议论文集[C];2002年
7 高明星;;DB2数据库应用性能优化问题浅谈[A];铁道部信息技术中心成立30周年暨铁路运输管理信息系统(TMIS)工程全面竣工投产TMIS工程建设论文专辑(二)[C];2005年
8 高明星;;DB2数据库应用性能优化问题浅谈[A];中国铁道学会——2004年度学术活动优秀论文评奖论文集[C];2005年
9 杜劲松;李强;包劲松;;国产600MW机组循环效率试验及性能优化分析[A];2008中国可持续发展论坛论文集(3)[C];2008年
10 杜劲松;李强;包劲松;;国产600MW机组循环效率试验及性能优化分析[A];全国火电大机组(600MW级)竞赛第十二届年会论文集(上册)[C];2008年
中国博士学位论文全文数据库 前7条
1 陈伟锋;大规模复杂过程系统的高性能优化理论与方法研究[D];浙江大学;2011年
2 李磊;分布式系统中容错机制性能优化技术研究[D];国防科学技术大学;2007年
3 贾海鹏;面向GPU计算平台的若干并行优化关键技术研究[D];中国海洋大学;2012年
4 那俊;基于两阶段适应的ASBS性能持续优化方法研究[D];东北大学;2011年
5 魏丫丫;Web传输的性能优化[D];清华大学;2006年
6 何倩;P2P系统性能优化若干关键技术研究[D];北京邮电大学;2010年
7 毛宏燕;基于部分计值的服务性能优化研究[D];上海交通大学;2006年
中国硕士学位论文全文数据库 前10条
1 唐沙;工程信息管理系统的性能优化研究[D];西南交通大学;2007年
2 曹珂;教育管理软件互操作应用系统及其性能优化[D];浙江大学;2005年
3 刘贇;基于大型计算机的基金系统开发及性能优化[D];复旦大学;2011年
4 王争;Web系统性能优化辅助方法的研究[D];北京工业大学;2006年
5 吴昌盛;B/S模式应用系统性能优化的研究[D];中南林学院;2002年
6 魏伟;基于SMP集群的性能优化方法的研究[D];兰州大学;2006年
7 刘凯;基于分治和参数化的队列网络模型系统的性能优化[D];浙江大学;2007年
8 柳香;云计算环境下的计算模型性能优化研究[D];河北师范大学;2012年
9 周广生;中小银行核心业务系统设计与性能优化[D];复旦大学;2008年
10 赵泳鑫;基于LBS的定位平台的服务构建和性能优化[D];吉林大学;2009年
中国重要报纸全文数据库 前5条
1 陈翔;性能优化只能救火[N];中国计算机报;2007年
2 本报记者 郭平;EMC简单高效实现私有云[N];计算机世界;2010年
3 ;安图特引入新型数据加速解决方案[N];人民邮电;2008年
4 陈洪康 郭宝群 李雪梅;浅谈VLDB性能优化与维护[N];人民邮电;2001年
5 驱动之家;加点“催化剂”引爆你的“镭”[N];中国计算机报;2002年
 快捷付款方式  订购知网充值卡  订购热线  帮助中心
  • 400-819-9993
  • 010-62982499
  • 010-62783978