CPU和GPU协同运算下的DEFLATE算法性能加速研究

被引量 : 0次 | 上传用户:bbpooh123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
异构计算,是未来高性能计算领域发展的主要趋势。顺应这种技术的发展趋势,GPU通用计算技术正面临前所未有的发展机遇。图形处理器在硬件设计方面具有:浮点运算能力强大,适合大规模、高计算密度并行数据处理等特点。GPU通用计算技术就是利用图形处理器的这些特点去完成那些非图形处理领域的通用计算任务。随着GPU编程技术的不断发展,利用GPU去协同CPU构建计算性能强大且成本较低的高性能计算平台具有广泛的应用前景。信息时代带来了“信息爆炸”。随着互联网的兴盛以及移动通信的发展,海量信息的存储及通信等问题日益突显。数据压缩的作用及其社会效益、经济效益将越来越明显。如果不进行数据压缩,那么无论是数据存储还是数据传输都很难实用化。使用数据压缩的好处在于:数据压缩不仅仅是能够为用户节约存储空间,也能较快的传输各种信息,减小通信延迟。此外,在节省通信带宽和节约信息传送资源消耗方面,数据压缩也能起到很大的作用。当前数据压缩领域流行的无损压缩算法有很多,如DEFLATE、BZIP2、LZMA、LZMA2等等,其中压缩速度最快的是DEFLATE压缩算法。根据对DEFLATE算法性能的实际测试,发现DEFLATE算法在大数据文件压缩方面的性能表现,并不如预期那样令人满意。因此,本文将以对DEFLATE算法进行性能改进作为实际出发点,研究如何利用GPU通用编程技术优化日常应用软件的执行效率。在DEFLATE算法的各种实现版本中,我们选择了GZIP的实现版本,因为该实现版本是最接近RFC1951文档中关于DEFLATE算法的描述。在优化方案上,我们选择了使用CPU和GPU协同运算加速的方式。为GZIP的运行重新设计了一套并行流水线机制,对部分算法的CPU实现代码进行了改进,并用OpenCL编程框架将DEFLATE算法中比较适合GPU编程的部分进行了kernel实现。经过多种硬件环境的测试,结果表明,该解决方案的最终实现版本能够对部分测试用例起到不错的加速效果。本文在实现对DEFLATE算法进行CPU和GPU协同加速的同时,也对以下内容作了较深入的分析和研究:1.对GPU体系架构和GPU编程技术进行了探讨。对NVIDIA和AMD两大显卡生产厂商的GPU架构设计特点,进行了系统分析。给出了GPU编程技术的发展历史,介绍了利用OpenCL的编写GPU通用程序的方法。2.总结分析了相关的数据压缩技术。以BZIP2算法和DEFLATE算法为例,分析了压缩算法的压缩原理和常见的压缩技术。细致分析了DEFLATE算法的LZ77压缩编码部分和Huffman熵编码部分。3.对GZIP源码的分析。主要分析其源码的组成结构、关键函数的实现细节以及优化可能性分析等。通过那些分析内容构建出一套比较合理的优化解决方案,并实现于最终的改进代码中。
其他文献
教师提问直接影响幼儿对美术活动的兴趣,文章介绍了幼儿美术活动中提问的相应策略。
网络舆论是一把双刃剑。如何让网络舆论发挥它优势的同时又让它的危害性缩减到最小,这是当前理论界和网络主管部门都颇为关注的问题。网络舆论的健康发展离不开网络从业者媒
意思自治原则是私法的基本原则中最具代表性的一个。具体到国际私法领域中,适用意思自治原则的意义和价值仍十分重要,不可忽视。鉴于此,本文对国际私法中意思自治原则的含义
一个个可爱的小女孩紧握拳头、撅着小嘴、竖起耳朵,那对愤怒的大眼睛眼尾上翘,带着怀疑的目光坚定地凝视着前方,像是随时准备着向外界进行反击;梦游的孩子伸出小手,一边流泪
随着计算机技术、多媒体技术、嵌入式技术、通信技术的发展,远程医疗得到迅速发展。而基于无线传感器网络的远程医疗会诊系统不仅有利于消除地域之间医疗水平的差异,减少患者
锑是中国的优势矿种之一。本文对中国锑矿床的成矿地质背景、赋矿围岩、控矿构造和成矿时代等进行了综合分析,简要总结了中国锑床的分布特征与成矿规律,同时提出了一些科学问
广西陆川米场-博白三滩成矿带是近几年新发现的以W、Mo矿化为主的多金属成矿带。本文对带内与W-Mo矿床有关的油麻坡复式岩体进行了锆石U-Pb年代学、岩石学、地球化学和Sm-Nd
经济全球化本身是一个涉及每个民族国家的政治和文化的复杂过程。其中,经济全球化与世界范围内文化的多元化、多样化会不会发生矛盾,会发生怎样的矛盾,就是一个经常引起人们深入
风电工程多建于偏远的山区,具有自然条件恶劣、运输道路差、施工难度大等特点。风电机组基础具有承受360°方向重复荷载和大偏心受力的特殊性,对地基基础的稳定性要求高。
学生因病缺课监测是获得学生健康状况信息的主要途径~([1])。为准确掌握学生疾病发生情况,逐步建立学生疾病监测和预警系统,预防和控制传染病疫情等公共卫生事件在学校的发生