论文(设计)基于纹理规则性分析的图像填补方法.doc

上传人:仙人指路1688 文档编号:3992998 上传时间:2023-03-30 格式:DOC 页数:22 大小:4.83MB
返回 下载 相关 举报
论文(设计)基于纹理规则性分析的图像填补方法.doc_第1页
第1页 / 共22页
论文(设计)基于纹理规则性分析的图像填补方法.doc_第2页
第2页 / 共22页
论文(设计)基于纹理规则性分析的图像填补方法.doc_第3页
第3页 / 共22页
论文(设计)基于纹理规则性分析的图像填补方法.doc_第4页
第4页 / 共22页
论文(设计)基于纹理规则性分析的图像填补方法.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《论文(设计)基于纹理规则性分析的图像填补方法.doc》由会员分享,可在线阅读,更多相关《论文(设计)基于纹理规则性分析的图像填补方法.doc(22页珍藏版)》请在三一办公上搜索。

1、基于纹理规则性分析的图像填补方法* 作者简介:郝川艳(1982),女,重庆市人,硕士研究生,助教,主要研究领域为计算机图形学;陈昕(1982),男,学士,助教,主要研究领域为音频视频处理,多媒体技术;吴恩华(1947),男,博士,教授,主要研究领域为计算机图 形学。郝川艳1+ 陈昕2+ 吴恩华31(福建师范大学协和学院 信息技术系,福建福州 350108)2(福建师范大学协和学院 信息技术系,福建福州 350108)3(澳门大学科技学院,计算机与信息科学系,澳门 999078)摘 要:本文提出了一种利用纹理规则性分析和纹理合成技术进行高效图像填充的新方法。该方法可以自动地抽取图像前景区域并且合

2、理的复原被遮挡区域的原始内容。对于前景抽取问题,一般的做法为了得到准确的结果往往需要引入交互操作。为了实现自动化的抽取,本文着重考虑前景为近似规则纹理(NRT)的场景区域。近似规则纹理具有强烈的信号规则性,利用对这种规则性的分析可以有效而准确的分割前景部分。对于背景恢复问题,我们基于纹理合成技术提出了一个新的背景填补算法,并且通过引入合成优先度概念将图像修补算法结合进来。因此该方法具有两种方法共同的优点。关键词:图像填补; 纹理规则性; 纹理合成; 近似规则纹理; 图像绘制; 前景分割; 填充An Efficient Image Editing Method by Texture Regula

3、rity and Texture SynthesisHao Chuanyan1+, Chen Xin2+, Wu Enhua31(Department of Information Technology, Concord University College, FuJian Normal University, FuZhou, 350108, China)2(Department of Information Technology, Concord University College, FuJian Normal University, FuZhou, 350108, China)3(Dep

4、artment of Computer and Information Science, Faculty of Science and Technology, Macau University, Macau, 999078, China)+ Corresponding author: HaoChuanyan Phn: +86-13763800690, Fax: +86-*-*-*, E-mail: waterwu_ zz , http:/*+ Corresponding author: ChenXin Phn: +86-13696886539, Fax: +86-*-*-*, E-mail:

5、c_risine tom. com, http:/*Abstract: This paper presents a new method for image completion based on texture regularity analysis. It extracts foreground information within image, fully and automatically for certain scenes, and fills the overlapping regions in a visually plausible way. Compared with pr

6、evious works that usually select foreground objects interactively for a robust extraction, our work focuses on a special kind of foreground content called near-regular textures(NRT). Near-regular texture has strong regularity for various features that can be used to ease the automatically foreground

7、 segmentation and to help improving precision. In filling phase, we propose a combined framework by taking advantages both of “texture synthesis” and “inpainting”. This framework reconstructs the background by introducing priority into exemplar-based texture synthesis. This priority determines the s

8、ynthesis strategy for each patch to be synthesized and propagates texture and structure information simultaneously as well.Key words: image completion; texture regularity; texture synthesis; inpainting; foreground removal; filling; near-regular texture1 引言图像填充问题是计算机图形学和图像处理中的一个重要问题。这个问题通常含有两个步骤,前景抽取

9、和内容填充。关于前景抽取,已经有很多基于交互的方法提出。但这也意味着相当精细和繁琐的工作。而对所有的场合都适用的自动化抽取方法目前似乎并不可能。因此我们的工作着重研究一类前景内容为近似规则纹理的场景1,3。尽管近似规则纹理只是一类特殊纹理,但是它能够为真实世界中大量的纹理建立起模型。这篇文章扩展了James Hays等的工作1,提出了一个自动检测算法提取出目标元素。图像填充研究通常有两类方法:纹理合成算法4-10和图像绘制技术2,11。纹理合成技术适合用来填充静态纹理区域和结构性纹理的区域。图像绘制技术常用于复原和修补图像中小缺陷,比如裂缝,污点等。我们的方法尝试将两者结合到一起,既保证基于样

10、例的合成算法的效率和效果,又充分考虑图像中含有的结构信息。 本文的剩下部分是这样组织的。第二节陈述相关工作,第三节和第四节给出算法基本理论和算法实现细节,第五节展示试验结果,最后在第六节我们给出总结。2 相关工作与图像填充问题相关的工作大致有两个方面:一是纹理规则性分析,二是纹理合成算法研究。纹理规则性分析是一个非常困难又很重要的问题。除了交互式方法外3,自动化的分析始终是研究的重点和难点。Leung 和Malik1将检测和分类纹理元素这个问题建立在一种跟踪原理上。而Lobay和Forsyth1是通过建立一个全局的纹素结构解决这个问题的。不同于上面的方法,Schaffalitzky et al

11、.1和Turning et al.1假设纹理是完全规则的和在一个平面上的,建立了一个很强的转换模型。综合考虑了上面方法的优缺点后,James et al.1提出了高阶特征匹配算法。这个算法的优势在于它运用了纹理的基本结构,却又没有在可允许的变形中加入过多的限制。纹理合成方法可以分成两类,一类是过程纹理合成,另一类是基于样图的纹理合成。而后者由于可以避免纹理映射和过程纹理合成方法的缺陷而成为目前更为流行的方法。典型的基于样图的纹理合成方法是Efros和Leung4于1999年提出的以Markov Random Field (MRF)为模型的非参数特征匹配方法。Wei和Levoy5扩展了Efros

12、/Leung的工作,通过基于金字塔7,8的合成方法大大加快了纹理合成的速度。Ashiknmin9提出了更强的连贯性搜索方式,其重要的意义就在于减少了搜索空间和取得了交互式的速率。在2001年,Efros6等又提出了基于块的纹理合成方法,在大大地加快了合成速度的同时也保持了很好的效果。3 纹理规则性模型与带优先级的纹理合成3.1 近似规则纹理分析模型近似规则纹理被定义为由一个严格规则纹理经过几何、光照或颜色等小幅变换后得到的纹理3。即: 其中分别表示颜色、光照、几何变换及其组合变换,是对应的严格规则纹理。根据平面镶嵌理论12,所有可平移对称的纹理都能够由一对最短的向量产生。向量的轨迹就形成了二维

13、的四边形网格,这些四边形网格定义了所有2D的纹素和纹素间的拓扑结构。因此近似规则纹理能够近似的由它所对应的严格规则纹理的生成向量对表示。基于上面的理论,纹理分析模型可通过重复下面四个步骤得到:提出纹素,分配格,改善已形成的格和薄平面样条卷积。基于James等的工作,本文的算法也着重以近似规则纹理为研究对象。我们应用了聚类算法,纹理合成算法和基于向量的掩模修改方法实现了自动掩模提取,并可完全地和精确地的覆盖目标区域。算法细节将在第四节详细说明。3.2 带优先级的纹理合成本文采用基于金字塔的多分辨率纹理合成算法7,8。同时,考虑到问题本身的特点,我们引入了优先级计算到合成算法中以更好的保持纹理的结

14、构。一般纹理合成的模型为:,其中是需要合成的图像,是边界融合算子,是重置算子,是样本纹理按照一定设定取出的基本合成单位,是搜索算子,是图像距离,是视觉相似性阀值。可以看到在这个框架中,主要有四个因素可以调节:基本合成单位,搜索规则,重组方式和边界融合方法。而合成顺序是纹理合成传递结构信息的关键。普通合成算法是按照扫描线顺序进行合成的,这并不能在我们的问题中取得最好的结果。受Criminisi2等的工作的启发,我们为每个候选块赋予不同的优先级,能方便地控制更适合于填充问题的合成顺序。如同2中提到的,高的优先级应该赋予给位于具有强连续性的边界上,并且周围都是具有高置信度的像素的候选块(图2)。优先

15、级的计算定义为:,其中代表块的置信度,称为数据项,用于描述边界上点的连续性。而和又定义如下:,其中是的面积,是一个规范化因子,是在点处正交于边界的单位正交向量,指出了正交操作。我们为每个边界候选块计算其优先级。4 算法实现细节我们的算法应用上述两个方面的模型制定了图像填充框架。接下来,我们会分两个部分说明我们的算法。第一个部分就是怎样自动地提取出目标区域的掩模,第二个部分就是通过基于优先级的纹理合成算法恢复原始图像。(1)基于向量对,从格中得到所有有效的纹素(图1)。(2)通过k均值聚类算法为每一个纹素分类前景和背景,再通过前向映射将得到的对应于每个纹素的掩模映射回原图像中纹素的对应位置。k均

16、值聚类算法中每一个样本点有六个采样数据(红,绿,蓝,红标准差,绿标准差,蓝标准差)如图2中a所示,图2b中是单个纹素对应的掩模,而c是映射回原图像后的结果。(3)用纹理合成算法补全图2c中未检测到的前景元素,并利用从格中得到的向量信息对其进行修改以得到更精确的掩模。通过计算每一对纹素之间和的偏移量,我们定义了一个圆形滑动窗口如图3c所示,它沿着格拓扑结构移动,在窗口内的像素会被赋予白色,否则被赋予黑色,如图3所示。 a b c图1 从格中提取出的所有有效纹素。所有有效纹素用黄色标记在图c中,b是从c中取得的一个纹素(由蓝色的矩形框标记),a展示了从c中得到的纹素块。a b c图2 为每一个纹素

17、提取掩模。a 采样空间。b 单个纹素的掩模。c 映射后的图像。 a b图3 提取完整的和精确的掩模。a 纹理合成方法得到的初步掩模,其中红色的a标记了滑动窗口。b 通过我们的自动掩模提取算法得到的完全的和精确的前景掩模。(4)用基于优先级的纹理合成算法完成图像填充。纹理合成算法的核心仍然是Efros/Leung4提出的非参数化采样方法,算法为每一个候选块搜索源图像直到找到与该候选快最相似的块。填充顺序对于输出图像的质量是很重要的,因此合成是按照我们预先为每一个候选块计算的优先级进行的。具有最高优先级的候选块自然是具有最大值的块,之后合成算法会为它找到最佳的替换块。必须要注意这里不是替换掉整个块

18、,而只是替换掉原图像中缺失的部分。图4显示了算法在最高层金字塔的运行过程。 a b c d图4 在最高层金字塔中算法运行的过程。a 正在合成。b 置信度计算。c 数据项计算。d 优先级计算。5 结果下面展示两组通过本文算法得到的结果。在图5中,前景中包含有近似规则纹理的结构,它的掩模会被自动确定,并通过合成方法恢复原始的图像。图6中背景含有近似规则纹理的结构信息。我们用自动掩模提取算法确定背景的掩模,在去掉前景目标后恢复原始图像。图5 结果。左边是原始图像,右边是合成结果。ab图6 结果。a 合成过程。合成是先对掩模进行的,如第二幅和第三幅图所示,第四幅图为由我们的算法得到的合成结果,最后一幅

19、图为一般的合成方法所得结果。b 更多结果。6 结论和展望6.1 结论本文提出了一个简单有效的图像填充方法,实现了自动掩模提取算法和基于优先级的合成算法。我们选择的目标对象包含有近似规则纹理的结构信息。本文的主要贡献在于两点:对于近似规则纹理类型的前景物的自动提取和基于优先级的纹理合成填充。实验证明这个算法可以有效地,自动地提取对应于目标对象的掩模。图7在用我们的方法得到的掩模和用阈值分割方法得到的掩模间做了一个比较,可见我们的方法取得了更好的效果。在基于金字塔的多分辨率纹理合成算法中融入优先级计算能够有效地将线性结构和2D纹理结构传递给目标区域。另外,采样窗口和搜索范围的大小是很重要的。实验证

20、明本文中用到的窗口参数应该相对较小,正比于目标对象的大小。图7 掩模比较。第一列,原始图像。第二列,通过我们的方法得到的掩模。第三列,阈值分割得到的掩模。6.2 未来的工作尽管本文方法对很多例子都能得到较好结果,然而这个方法还存在一些问题。首先,移除目标区域后,原始图像已经被分割得过于零碎以至于不能提供足够的采样数据,其次,算法的速度还有待进一步提高。由于候选块优先级的计算是先于合成算法的,这意味着今后可以通过将算法并行化,并移植到硬件加速卡上以大大提高合成速度。最后,该算法还可应用到更多的问题中,比如第五节中规则纹理前景物体的抽取。致谢 非常感谢澳门大学的各位老师,James Hays先生,

21、古元亭先生,和我的同学,他们给了我很多指导和讨论。感谢澳门大学科研项目的资助。同时也感谢福建师范大学协和学院的各位领导,老师和同事对我的支持,以及对本文再次修改的宝贵意见。References1 J. Hays, Marius Leordeanu, Alexei A. Efros and Yanxi Liu. Discovering texture regularity as a higher-order correspondence problem. In Proc. ECCV on Computer Vision. Austria, 2006. 522-535.2 A. Criminisi

22、, P. Prez and K. Toyama. Region filling and object removal by exemplar-based image inpainting. IEEE Transactions on Image Processing, 2004, Volume13:1200. 3 Y. Liu, W.C. Lin, and J. Hays. Near-regular texture analysis and manipulation. ACM Transactions on Graphics (SIGGRAPH), 2004, Volume23:3.4 A. E

23、fros and T. Leung. Texture synthesis by non-parametric sampling. In Proc. Int. Conf. Computer Vision. Kerkyra, Greece, 1999. 1033-1038.5 L.W. Wey and M. Levoy. Fast texture synthesis using tree-structured vector quantization. In Proc. ACM Conf. Comp. Graphics (SIGGRAPH). 2000. 479-488.6 A. Efros and

24、 W.T. Freeman. Image quilting for texture synthesis and transfer. In Proc. ACM Conf. Comp. Graphics (SIGGRAPH). Eugene Fiume, 2001. 341-346.7 J.S. de Bonet. Multiresolution sampling procedure for analysis and synthesis of texture images. In Proc. ACM Conf. Comp. Graphics (SIGGRAPH). 1997. 361-368.8

25、D.J. Heeger and J.R. Bergen. Pyramid-based texture analysis/synthesis. In Proc. ACM Conf. Comp. Graphics (SIGGRAPH). Los Angeles, CA, 1995. 229-233.9 M. Ashikhmin. Synthesizing natural textures. In Proc. ACM Symposium on Interactive 3D Graphics. Research Triangle Park, NC, 2001. 217-226. 10 L. Liang

26、, C. Liu, Y.-Q. Xu, B. Guo, and H.-Y. Shum. Real-time texture synthesis by patch-based sampling. ACM Transactions on Graphics, 2001, Volume20:127.11 M. Bertalmio, G. Sapiro, V. Caselles, and C. Ballester. Image inpainting. In Proc. ACM Conf. Comp. Graphics (SIGGRAPH). New Orleans, LU, 2000. 417-424.

27、12 Serge Belongie, Jitendra Malik, and Jan Puzicha. Shape matching and object recognition using shape contexts. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2001, Volume24:509. GPU上通用计算的存储优化* 基金项目:Supported by the the Program of AMD University Cooperation (AMD公司大学合作计划)作者简介:陈钢(1982

28、),男,安徽淮南人,博士研究生,主要研究领域为嵌入式系统设计,计算机系统结构,高性能计算。李国波(1968),男,浙江舟山人,博士研究生,主要研究领域为嵌入式系统设计,信息隐藏与数字水印。张珂良(1985),男,江西上饶人,博士研究生,主要研究领域为嵌入式系统设计,计算机系统结构。吴百锋(1963),男,教授,博士生导师,主要研究领域为嵌入式系统设计,纠错编码理论,计算机系统结构。陈 钢1+ 李国波 张珂良 吴百锋(复旦大学 计算机科学技术学院, 上海 200433)摘 要:现代图形处理单元(GPU)由于强大的浮点运算能力和卓越的性能价格比成为高性能计算的首选平台。和图形应用相比,通用计算中存

29、在大量的不规则存储访问,影响它们在GPU上的执行性能。为此,提出一种有效的数据派生方法,将不规则的存储访问转化为规则的存储访问,使用向量数据类型提高通用计算的存储带宽利用率,进而提升其在GPU上的执行性能。实验结果表明:文中的方法降低了通用计算程序在GPU上的执行时间,获得了平均67%的加速比,证明该方法的有效性。关键词:GPU;通用计算;数据派生;存储优化;向量数据类型Memory Optimization for General-Purpose Computing on GPUCHEN Gang, LI Guobo, ZHANG Keliang, WU Baifeng(Institute

30、of Computer Science and Technology, Fudan University, Shanghai 200433, China)+ Corresponding author: Phn: +86-136-6184-4834, E-mail: 071021049Abstract:Modern graphic processing unit (GPU) has become the preferred platform for high performance computing due to its enormous floating computation power

31、and prominent performance/cost ratio. However, compared to the graphical applications, there are a large amount of irregular memory accesses that degrade the execution performance of general-purpose computing programs. The present paper proposes a memory access optimization method based on data deri

32、vation. This method effectively changes irregular memory reference to continuous memory reference in order to use vector data type to enhance the memory bandwidth utilization, which further leads to a program performance gain. Experimental results show that the proposed method can decrease the execu

33、tion time of the general-purpose computing programs on GPU and achieve 67% speedup on average, demonstrating the effectiveness of the method.Key words:GPU; general-purpose computing; data derivation; memory optimization; vector data type1 引言作为一种众核(many-core)体系结构,GPU致力于缓解传统高性能体计算机所面临的存储墙、低性价比和低效率问题。与

34、传统的CPU相比,GPU具有以下典型特征:采用大量廉价的晶体管用于算数逻辑单元参与数据处理;高效的存储带宽层次;采用相对简单的控制逻辑1。例如,AMD HD4870包含几百个处理核心,单精度浮点峰值性能达到1.2TFlops,存储带宽高达115GB/s2。GPU所具有的结构简单、片上运算单元密集、存储带宽高效、性价比高等特点,使其非常适用于数据相关性较低的大规模并行计算。如今,基于GPU的通用计算已经成为国内外高性能计算的研究热点3-4。传统的GPU编程主要依靠图形接口(例如OpenGL)将计算概念映射到图形硬件上,然而这种编程方式难以掌握且缺乏灵活性,很难充分发挥GPU的计算能力。为克服这些

35、缺陷,使GPU更好的适用于通用计算,一些更高级的编程模型相继问世,较为主流的有AMD的Brook+流计算模型5、NVIDIA的CUDA模型6以及Khronos Group开发的OpenCL模型7。虽然上述编程模型在一定程度上简化了程序设计的复杂性,但是编写高性能的通用计算程序仍然需要充分利用GPU硬件所带来的优势,尤其是有效利用其存储带宽8。与图形应用相比,通用计算程序中存在大量的不规则存储访问,影响其在GPU上的执行性能。GPU的硬件设计通常采用分散式SIMD结构,存储访问的延迟高达数百个时钟周期。虽然GPU可以通过同时维持大量线程,以零开销的硬件切换来满足存储延迟隐藏的有效性,但如果程序中

36、存在过多的不规则存储访问,会造成大量线程同时访存,从而造成暂停,浪费了宝贵的计算资源。因此,为充分发挥GPU的性能潜力,有必要针对通用计算程序在GPU上的存储访问进行优化。2 AMD RV770 GPU硬件架构与编程模型2.1 RV770体系结构如图1所示,RV770 GPU可看作由若干SIMD引擎(SIMD Engine)构成的多处理器9。由于SIMD的构架方式,GPU把更多的芯片资源用于数据处理,而非用在指令流控制。因此,其并行处理的能力远远超过了当今的多核处理器。HD4870包含10个SIMD引擎,每一个SIMD引擎又由16个线程处理器(thread processor,TP)构成,TP

37、中由5个标量计算核心(stream core,SC)构成。SC每个时钟周期能够执行一个单精度浮点乘加运算和整型乘加运算,其中一个SC还可用执行超越函数(sin、cos和log)。双精度浮点运算通过组合TP中4个SC完成。另外,还有一个分支单元用来处理分支操作。图1 GPU体系结构2.2 流计算编程模型GPU体系结构支持新的编程模型流编程模型。基于Stanford大学的BrookGPU 项目10,AMD推出的Brook+编程语言在标准C/C+的基础上扩展了一些新的关键字和语法。在Brook+中,流(stream)是一些可被并行操作的相同类型的数据元素的集合;核心(kernel)是在GPU上以SP

38、MD(single program multiple data)方式执行的程序片段,GPU上kernel的执行可与CPU异步进行,典型的过程如下:(1)CPU把数据流从主存拷贝到GPU存储器(通过Brook+中的streamRead函数完 成)并启动GPU进行计算; (2)GPU生成大量线程并行执行kernel中定义的计算任务;(3)当kernel执行完毕,CPU把计算结果从GPU存储器拷回主存(通过Brook+中的streamWrite函数完成)。3 基于数据派生的存储优化为充分利用GPU高效的存储带宽,可以在程序中使用向量数据类型。然而,通用计算程序中的不规则存储访问阻碍了向量数据类型的使

39、用。因此,有必要使用数据派生将不规则的存储访问转换为规则的存储访问。3.1 向量数据类型相对标量数据类型,向量数据类型可由24个32位的标量数据类型组合而成,其大小由向量数据类型的后缀数字指示。例如,int4向量数据类型由4个int数据类型构成,分别用.x、.y、.z和.w进行引用。使用向量数据类型(如int4),就可以在一次存储访问请求中取入4个数据。与标量类型相比,存储访问请求明显减少,最大限度地利用了存储带宽。3.2 数据派生方法通用计算程序通常存在大量的循环访问不同的数组。在一个循环中,对数组的规则访问是指:数组下标表达式从该数组每一维的起始位置以步长为1的方式单调递增访问存储器中连续

40、排列的相邻元素。本文以二维数组为例,介绍每种不规则存储访问的数据派生方法。表1展示了通用计算程序中几种常见的不规则存储访问。表1 常见的不规则存储访问模式访 问 模 式示 例访 问 模 式示 例按列访问for(i=0; iN; i+)for(j=0; jN; j+) Aji跳跃访问for(i=0; iN; i+)for(j=0; jN; j+) Ai2j倒序访问for(i=0; iN; i+)for(j=0; jN; j+) AiN-j偏移访问for(i=0; iN; i+)for(j=0; jN; j+) Aij+1倾斜访问for(i=0; iN; i+)for(j=0; jN; j+) A

41、ii+j从表1可以看出,数据派生需要将数组A(不规则的存储访问)派生为数组Adrv(规则的存储访问),具体规则如下:(1)对于按列访问的数组,对其实施转置,派生为按行访问;(2)对于倒序访问的数组,对其实施按列反转,派生为正序访问;(3)对于倾斜访问的数组,对其实施相对于外层循环的动态移位,派生为列方向上无间隔平行访问;(4)对于跳跃访问的数组,对其实施相对于内层循环的压缩聚集,派生为行方向上无间隔连续访问;(5)对于偏移访问的数组,对其实施相对于每行起始地址的移位, 派生为行方向上对齐的连续访问。4 实验结果对比为验证本文方法的有效性,在AMD FireStream 9250 GPU上使用B

42、rook+编程语言对vector-addition(向量加法)和matrix-multiplying(矩阵乘法)进行了测试。每个测试程序都各有2个不同的版本:使用向量数据类型优化前的程序和使用向量数据类型(float4)优化后的程序。实验所使用的GPU基于RV770核心(频率为652MHz),GDDR-3显存(大小为1G),通过PCIe总线与CPU之间传输数据;CPU是AMD Phenom 9950 Quad-Core处理器,系统内存为3G;操作系统是Windows XP,开发环境是Microsoft Visual Studio .Net 2005 + AMD流计算软件开发工具1.4版本。Ve

43、ctor- addition由1个单重嵌套循环并包含3个一维数组,由于每个数组的访问模式都是连续的,因此不需要对其进行数据派生.Matrix-multiplying由1个三重嵌套循环组成并包含3个二维数组,其中2个数组是按行访问,1个数组按列访问,利用本文所提出的方法对按列访问的矩阵实施转置,从而转化为按行访问。表2显示了每个程序使用float4数据类型优化后的加速比,可以预期,随着输入数据规模的增大,文中提出的方法可以获得更大的性能增益。表2 程序优化前后的执行时间和加速比测 试 程 序数 据 规 模优化前执行时间(ms)优化后执行时间(ms)加 速 比Vector- addition102

44、47.476.931.0820487.607.001.0940967.817.081.10Matrix-multiplying102499.8660.201.662048657.81281.342.3440965197.431883.192.765 结论本文针对通用计算程序中常见的不规则存储访问模式,提出一种数据派生的方法,把程序中不规则的存储访问转化为规则的存储访问,进而可以使用向量数据类型增加程序的存储带宽利用率。随后,采用2个实验程序对本文方法的有效性进行验证,实验结果表明:本文方法可以提高通用计算程序在GPU上的执行性能。通常,CPU和GPU之间数据传输也容易构成通用计算程序的性能瓶颈

45、。因此,本文下一步工作将研究如何有效重叠数据的传输与计算,进一步提高通用计算程序在GPU上的执行性能。References1 Owens J D, Houston M, Luebke D, at al. GPU Computing C. In Proceedings of the IEEE, 2008, 8798992 A TI Radeon HD 4890 Graphics website, .html3 Owens J D, Luebke D, Govindaraju N, et al. A survey of general-purpose computation on graphics

46、 hardware. Computer Graphics Forum, 2007, 26 (1):80-1134 Wu Enhua, Liu Youquan. General purpose computation on GPU. Journal of Computer Aided Design & Computer Graphics, 2004, 16 (5) (in Chinese)5 AMD Corp. Brook+ language specification. 6 Nvidia Corp. CUDA 2.0 Programming Guide. 7 Munshi A. The OpenCL specification. http:/www.khronos.org/registry/cl/specs/ope

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号