当前所在位置: 首页 > 论文范文 > 正文

一种确定多媒体应用程序内层循环的子字并行编译方法

本文共计4738个字,预计阅读时长16分钟。【 字体:

论文指导服务

毕业论文网专业团队提供毕业设计、论文写作指导及相关咨询服务

论文指导 毕业设计 答辩咨询
微信号已复制到剪贴板

  一种确定多媒体应用程序内层循环的子字并行编译方法

  摘 要: 多媒体程序是数据密集型应用,其核心代码部分占用了大部分的执行时间,因此,对多媒体应用程序的研究大多针对其核心代码部分。本文围绕多媒体应用程序的核心内层循环,分析其子字并行特点,提出了1种新颖的按位数据流分析方法,能够确定程序的内层循环,为进1步深入研究奠定基础。

关键词: 多媒体;子字并行;内层循环;数据流

1 引言

  随着多媒体技术和网络的迅猛发展,多媒体产业正在以惊人的速度扩展,卓越的多媒体处理能力成为对现代计算机的必然要求之1。

  从体系结构研究方面,研究人员在通用处理器中增加新的多媒体功能处理部件以及相应的多媒体处理指令,或者设计专用的多媒体处理器(ASIP),都能够完成对多媒体信息的高效处理。但是,与多媒体处理器的发展相比,面向多媒体的编译技术明显滞后。出于多媒体应用程序与科学计算或其他通用应用程序的特殊性,开发人员往往还是会采用复杂低效且易出错的手工编码方式产生代码。

  因此,我们认为,无论是从计算机体系结构、还是从编译器等多方面来提高计算机的多媒体处理能力,首先必须要针对多媒体应用特点,对多媒体应用程序的特征进行分析和研究。纵观历史,有许多面向程序特征提高计算机性能的典范,证明了对程序特征的分析和研究直接影响到计算机性能的优化和设计。例如,IBM公司与美国加利福尼亚大学通过对应用程序的统计和研究发现,CISC指令集80%的指令只在20%的运行时间内用到,因此简化了计算机指令集结构,提出了RISC指令集结构,从而提高了机器性能,减轻设计人员负担。循环是多媒体应用程序的核心,在程序的运行过程中几乎占了90%的时间,而核心循环体—内层循环又是循环的关键。有实验数据表明,大多数多媒体应用在最内层循环花费了80%~90%的执行时间。因此,要挖掘多媒体应用的程序特征,深入核心循环体的内层循环提取特征是非常有必要的。本文围绕多媒体应用程序的特点,对其核心代码———内层循环和并行性进行深入的分析,针对当前编译技术的不足提出1种确定内层循环的数据流分析方法。本文第2部分介绍并分析多媒体应用程序的核心代码,以及其固有的子字并行性。第3部分介绍相关编译技术的研究发展。第4部分介绍按位的数据流分析。第5部分给出结论。

2 多媒体应用程序内核分析

  通过对多媒体应用程序定性研究分析,多媒体应用不同于科学计算和通用应用,它具有自身固有的特征:

  (1)内在的并行性

  (2)数据类型的连续性

  (3)实时响应性:如视频会议和电子商务等,需要可靠迅捷的实时响应

  (4)数据有序性:由于弱的空间局部性,多媒体的很多数据与操作都具有强烈的有序性

  (5)高网络带宽性:随着网络的发展,多媒体应用对网络带宽的要求越来越高,如网络游戏、网上视频点播等

  (6)高存储带宽性:因为多媒体应用程序处理的数据量往往很大、甚至海量,所以,对存储带宽的要求也很高。

  多媒体应用程序往往包含1个或多个代码核心,代表了大部分的动态指令执行,在程序运行过程中几乎占据了90%的时间,所以,除开以上介绍的多媒体应用程序的这些特点,从编译的角度,我们更关心其核心部分代码———内层循环。1般来说,这些核心部分执行的操作具有并行和计算密集的特点,且代码控制结构规则,需要对大量的、连续的、流的、可变精度的数据进行操作。首先,并行性的特征源于多媒体应用程序对大量独立的数据集合实现相同的操作,因此,这些操作能够并行执行。第2,大量的计算密集型的操作和代码的控制结构并不复杂,与典型的整型程序相比,多媒体应用程序中通常几乎不带有分支,控制结构非常规则。第3,输入输出数据几乎不存在时间局部性,因此具有流特性,流数据即时操作即时丢弃,结果或者直接写回内存或者传送至网络作为输出数据流,如流视频帧、流音频采样。第4,根据不同的数据类型,数据元素的精度要求是可变的,如8位的图像像素、16位的音频采样。1般来说,多媒体应用程序处理的数据大小为8位、16位、32位、64位整型,或32位单精度浮点、64位双精度浮点。多媒体应用程序的每个数据以“子字”(subword)的形式进行操作,因此这种并行性称为“子字并行”(subword paral—lelism)。

阅读全文
 1 2 3 4 下一页 尾页