- 18
- 0
- 约7.7千字
- 约 8页
- 2017-02-16 发布于北京
- 举报
马克思主义方法论在论文中的应用
马克思主义与社会科学方法论论文设计
学生信息 姓名 学号
院系 专业
邮箱 电话 论文题目 视频解码器在异构系统上的实现及并行优化随着视频内容清晰度和视频编码标准复杂度的不断提升,视频实时播放对设备性能需求越来越高。近年来,随着GPU(Graphic Process Unit,图形处理器)硬件的飞速发展,如何充分利用GPU的强大的计算能力。为了减少了不同异构平台间的差异,统一异构平台规范,、ntel,,AMD等业界巨头联合制定了开放运算语言OpenCL标准。它提供了一个面向系统通用目的并行编程的开放式、免费标准,为视频解码器的优化提供了机会。
在.264解码过程中,去块滤波(deblocking filter)部分耗时通常占整体耗时的10%到40%左右。如果能对其进行有效的优化,对整体解码速度将会有明显的提升。然而
本文采用两种并行策略。第一种是传统的2D-wavefront方法,通过对顺序滤波过程的分析,在保证整个滤波过程中宏块间数据依赖的情况下,尽量提升并行度,以提高滤波速度。第二种则是在画质和滤波速度中权衡利弊,以宏块间的依赖关系为代价,对所有宏块进行并发滤波操作,来进一步提高滤波速度。
本文针对FFmpeg中的H.264解码器,分别采用上述两种策略对滤波过程进行并行化改进。实验结果表明,第一种策略由于滤波时核函数发射次数过多,相比CPU单线程慢了20多倍,第二种策略在不考虑内存传输耗时的情况下,滤波速度相比CPU单线程提高了0%左右
研究.264解码器在GPU上的优化实现,在开发成本、功耗、系统效率以及普及标准方面都有重大意义。
在开发成本方面,GPU的通用计算的开发成本与软件开发类似,远低于硬件开发成本,因此更新更快,在修复bug、改善性能上都能更快的响应。
在效率方面,由于解码工作转移到GPU执行,那么CPU的负载下降,那么CPU则可以同时做别的工作,整体系统的流畅度也会随之上升。
在普及标准方面,H.264解码器的优化可以使更多设备能够支持新修订标准编码视频的解码工作。这样能够使得新修订的普及工作更加顺畅,让更多的终端用户享受到新修订带来的技术优势。
尽管如此,由于解码流程中的存在复杂的数据依赖,如果不能很好的处理这些依赖,尽可能提高并行度,在解码速度上并不会有太大的提升,甚至反而会下降。如果能有效的解决数据依赖问题,提高并行度,对将来视频编解码也会有好的一面。
Abstract II
目录 III
1 绪言
1.1 课题背景
1.2 课题研究的目的和意义
1.3 国内外概况
1.3.1 视频编解码
1.3.2 GPGPU
1.3.3 相关研究
1.4 课题的主要研究工作
2 视频编码与OpenCL
2.1 H.264
2.1.1 环路滤波
2.2 OpenCL
2.2.1 OpenCL架构
2.2.2 OpenCL运行时
2.2.3 OpenCL存储层次
3 宏块并行策略
3.1 基本思路
3.2 优化方案
3.2.1 减少分支
3.2.2 工作组调度
3.2.3 内存访问
3.3 实验结果
3.4 本章小结
4 不考虑依赖的宏块级并行
4.1 基本思路
4.2 内存传输性能分析
4.2.1 Pinned内存与Paged内存
4.2.2 映射访问与直接访问
4.2.3 小结
4.3 实验结果
5 不足和展望
致谢
参考文献
本文主要的研究对象是H.264编码中的去块滤波部分。在H.264解码过程中滤波所占比率通常达到了整个过程耗时的20%到40%左右[2][3],在H.264的解码过程中仅次于运动补偿(Motion Compensation)。运动补偿虽然在解码过程中占用时间最多,但是相比去块滤波,其每个宏块的计算量太大,不太适合GPU的小粒度的大规模并行。因此本文选择去块滤波部分作为具体研究对象,尝试基于OpenCL平台对其进行优化。
随着视频信息的爆炸性增长,视频压缩亟待发展。更大的压缩比带来的则是编解码所需的更大的计算量。而与此相对的,GPU的计算能力不断上升,加上GPU通用计算技术的不断成熟,利用GPGPU来优化视频解码有着良好的前景。然而在利用GPU通用计算技术优化视频解码的过程中存在着很多问题,比如大并行度所需的数据不相关性,以及异构系统中的带宽限制等问题都制约着GPU视频解码的发展。
本文在OpenCL平台上对FFmpeg的H.264视频解码器的去块滤波部分进行了并行优化。本文的主要
原创力文档

文档评论(0)