基于语句迁移的循环变换在多核SIMD架构上的研究与实现

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:zhongshengxiao
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
当代的计算机应用程序大部分是多媒体应用,包括音视频处理,图像处理,3D绘图,语音识别等,这就对处理器提出了更加严格的实时性要求。因此,多媒体SIMD扩展结构,已经逐渐为通用微处理器所采用,以获取更高的多媒体处理速度。为了最大化的并行处理,当前许多片上多核处理器都开始采用了SIMD扩展结构。一方面,为了执行SIMD操作,向量寄存器中的数据必须先将位置调整对齐,从而妨碍性能的提高,也影响SIMD编译器中自动向量化的效率。另一方面,许多常见的以循环为主的应用程序都是单线程的。以前的研究工作都没能很好的解决这样一个问题,即如何在考虑SIMD硬件的限制下,挖掘循环体结构中的粗粒度并行度以应用到多核环境中。本文研究了多媒体应用中常见嵌套循环的变换框架,包含了依赖关系的抽象和建立、分析和变换,以及最后变换代码的生成。本文提出了一种基于语句迁移的循环变换,主要是通过语句迁移的方式,在考虑原有依赖关系的情况下,对每层循环中的语句进行迁移。该变换对外层循环进行基于依赖图的分析和变换,提高并行度,从而可以划分成多个线程在多核环境下并行的执行。对内层循环,变换过程抽象出偏移集合,建立出相应的数学模型,并提出了最优解和近似解两种解法,不仅实现SIMD化,也减少所需要的数据对齐操作。内外层循环变换过程是相互影响和制约的,对此本文中也做了详细的研究。最后本文根据有无数据依赖环,分情况详细研究了SIMD代码的生成问题。该策略已在Cell SDK仿真工具上实现,并进行了大量的测试。实验结果显示,本文提出的循环变换方法可以有效的减少数据对齐操作,同时外层的循环变换可以显著的提高并行度。在Cell上的实验结果显示,通过减少数据对齐操作,可以获得1.1x的加速比。另外由于进行多核并行处理,平均加速比达到6.14,因此,变换后的循环体整体上可以获得6.67的平均加速比。
其他文献
心电图学是一门实践性很强的学科,其理论比较复杂、抽象,是诊断学教学中的重点和难点。要搞好心电图教学,必须与临床实践相结合。而在传统的心电图教学中,通常采用纸质的心电
概念格是近年来获得快速发展的数据分析的有力工具之一。它通过Hasse图表现出概念之间的泛化和例化关系,已在知识工程、数据挖掘、信息检索、软件工程和数字图书馆等领域得到
文本数据常用文档-词二维共现矩阵表示,大多数传统聚类算法属于单向聚类,即要么是对样本进行聚类,要么是对特征进行聚类,没有考虑到样本和特征之间自然存在的相互关系。尤其
包分类是根据数据包的头部字段将数据包按一定规则进行分类的过程,在路由器、防火墙和入侵检测等网络关键设备中均有广泛的应用。包分类技术是因特网提供一切有差别服务和其
TM多波段遥感图像的地物及其分类一直是遥感图像处理领域比较难解的问题。由于地物种类繁多,且各种不同的地物随着时间的推移和空间分布的不断变化,成像光谱作为多波段的地物
C程序内存安全问题是指用C语言编写的程序中存在的非法操作内存区间引起的安全问题,常见的有数组和指针访问越界、缓存区溢出和C库函数的的非法操作等。产生问题的原因是C语
在互联网的发展中,用户隐私保护得到越来越多的关注。用户在通信过程中,除了通信内容之外,通信关系也会泄露一些重要的问题。即谁和谁在通信本身也是重要的隐私,需要加以保护
当前,随着无线网络交互类、背景类和流类等业务的不断增长,对蜂窝移动通信系统的容量、通信质量以及覆盖范围等方面的要求不断提高,无线通信下行链路的性能成为反映系统性能
当今计算机网络发展迅速,网络的行为方式也越来越社会化,即网络中分布的个体根据各自的策略来决定自己的行为,这种策略性分布式系统随着网络服务模式的改革而变得越来越重要,
图像压缩给图像各方面的应用带来了很大的便利,数码相机、遥感、传真、医疗以及电子商务等多个领域的图像压缩研究使压缩技术越来越成熟和多元化。小波变换是一种数学方式,近