- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
压缩感知算法的并行化研究
并行之美
基于GPU的图像压缩感知并行算法研究
【摘要】压缩感知是近几年出现的一种新型信号处理方法,以远低于Nyquist频率对信号同时进行压缩与采样,然后通过求解一个最优化问题就能从少量的观测值中以较高的概率重构出原始信号。目前,这种方法已被引入到遥感图像处理领域中,然而,由于遥感图像具有高分辨率、多时相、数据量大等特点,重构信号时间急剧增加,使得压缩感知理论在遥感图像处理实际应用中存在一定待解决的问题。若仅使用传统CPU进行串行处理,运行时间过长,无法满足人们对算法的实时/准实时处理要求。最近几年,GPU计算能力得到很大的提升,具有强大的浮点运算能力,已成为提高算法处理速度最有效的方式之一。因此,本论文利用GPU的并行特性,采用OpenCL 编程模型探索了压缩感知算法在GPU平台上并行实现。
【关键词】压缩感知算法;GPU;并行计算;图像处理;
引言
1.1压缩感知算法
随着信息时代的飞速发展,在处理数字信息问题中,传统Nyquist采样定理已无法满足需求。为解决这一问题,Donoho和Candes等人于2006年提出了压缩感知(Compressive Sensing,CS)的全新信号采样理论。这一新颖信息获取理论指出:在某一已知变换域中稀疏表示的高维数据可通过一种不相关的观测矩阵投影到低维空间中,然后从少量的测量数据中采用一定的重构算法就可以高概率地恢复出高维数据。压缩感知通过将压缩和采样合二为一,提高了数据的采样速度,但在解码端却由于重构算法复杂度高,仅采用传统的串行方式进行处理,存在运行时间过长,难以应用到实际中去。近几年,GPU(Graphic Processing Unit,图像处理器)的并行处理能力不断增强,可以使数据密集型算法获得更快的处理速度。压缩感知是属于数据密集型应用,包含大规模矩阵运算,数据相关性小,特别适合并行处理,将GPU应用到压缩感知算法上进行并行化,是目前的研究热点之一。
1.2 GPU简介
GPU是相对于CPU的一个概念,在1999年,由NVIDIA公司发布GeForce 256图形处理芯片时首次提出。近年来,GPU正在高速发展,极大地促进了计算机图形处理速度和质量的提高,不仅加快了相关应用领域的发展,同时也为人们利用 GPU 进行通用计算提供了良好的处理平台。随着计算机并行处理可编程性的不断发展,目前 GPU 架构兼具流处理、可编程流水线、高密集并行运算等新的特性,其GPU的并行计算能力得到了各个科学计算领域的高度关注。
1,3 并行计算简介
在当今计算机发展的过程中,计算机处理速度的不断加快是人们一直以来追求的目标,然而发展速度却限制于硬件发展速度的。因此,在新一代的计算机中,为加快算法的处理速度,人们开始采用并行技术来改善其处理速度。并行计算(Parallel Computing)是指同时使用多种计算资源来解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。在并行计算模式上,主要可以分为时间并行和空间并行两种模式。时间并行是指将任务划分为不同的部分,各部分可以在同一时间内同时进行处理。空间并行是指在多个计算单元上同时执行计算任务,具体分为数据并行和任务并行。数据并行是指对于同一任务,将所需处理的数据合理分配给不同的计算单元执行。任务并行则是将一个计算问题进行拆分,分解为多个子任务且能同时进行处理。一般情况下,任务并行中的算法拆解难度较大,而数据并行则针对任务内的数值操作,只需数据间具有相互独立即可。
2 压缩感知并行算法分析
为实现压缩感知重构算法的并行化,首先需要根据算法原理完成算法的串行编码,然后对压缩感知重构算法进行热点分析,找出制约其算法计算效率的关键步骤,为算法并行化做准备。对于并行算法的设计与实现,根据GPU的并行特性,分析这些耗时步骤的可并行性,完成算法的并行化设计,最后采用OpenCL编程模型实现并行算法的编码,重点研究其并行步骤中内核函数的设计与实现。
2.1 压缩感知算法理论框架
美国科学院院士D.Donoho、E.Candes及华裔科学家T.Tao于2006年正式提出压缩感知理论。其理论框架具体由三个核心部分构成,如图1所示。
图1 压缩感知算法理论框架
信号重构算法是解码端的关键所在,目前应用较多的有MP 算法、OMP 算法、CoSaMP 算法等 。本文选择以CoSaMP 算法为例。
2.2 串行重构算法实现及热点分析
由前一小节可知,CS 理论的重构算法采用 CoSaMP 算法,此部分是本文需进行并行化研究的部分,其串行算法流程图如图2所示。
图2 CoSaMP 算法串行算法流程图
为实现压缩感知重构算法的并行化,需要对串行算法进行热点分析,找出算法的耗时步骤。可利用串行程序热点分析实验,通过计算从而得到对串行算法各步骤的时间统计和整个算法的
原创力文档


文档评论(0)