论文部分内容阅读
由于信息技术的快速发展,越来越多的新兴网络多媒体服务应运而生,例如网络视频和可视电话等。而这些多媒体服务具有数据量大,传输比率高,实时性强等特点。传统的信息表达以及传输方式由于存在着运算复杂,计算量大等缺点,已经不能满足这些要求。因此,对视频数据的编码技术的研究成为了当前的研究热点。而并行运算能够有效的提高视频数据的压缩编码速度,高性能并行处理系统的不断发展也为提高视频数据的处理速度提供了更加广阔的空间。
近年来,GPU(Graphics Processing Unit图像处理单元)在一些数据密集型计算上的计算能力和发展速度都已经远远超过了CPU,用GPU进行通用计算已成为很多人的选择。以前,GPU在计算中的发展受限于较多图形处理的操作,编程的复杂性以及精度问题。NVIDIA公司于2007年发布了CUDA(Compute Unified Device Architecture,计算统一设备架构)体系构架,这个框架可以用GPU来解决的商业,工业和科学方面的复杂计算问题。它是一个完整的GPGPU解决方案,提供直接访问硬件接口,而不必依靠传统的图形API接口来实现GPU的访问。在新的计算架构框架通过使用GPU的硬件资源为大规模的数据计算应用提供一种比CPU的计算能力更为强大的运算功能。CUDA采用C语言作为编程语言提供大量的高性能计算指令开发能力,为现今对计算能力要求极高的数据密集型程序提供了大型的并行运算平台。
本文首先介绍了GPU通用计算的处理性能以及GPU通用计算在各个领域的发展及前景,其次对NVIDIA公司为GPU通用计算开发的统一设备计算架构CUDA做了介绍。阐述了MPEG2编码压缩流程及原理,详细了介绍了运动估计算法,离散余弦变换,运动预测,量化等编码算法,最后提出了使用CUDA实现MPEG2视频压缩过程中耗费最多运算时间离散余弦变换以及运动估计算法的方法,分析对比GPU执行上述算法相对于CPU上实现的优缺点。通过一系列的测试,结果表明离散余弦变换以及运动估计算法具有相当的并行性,在GPU上实现可以极大的视频的编码速度。