论文部分内容阅读
苹果公司在Macworld 2007上发布的智能手机iPhone是多媒体与通信技术迅速发展带给我们生活美好礼物的一个典型例子,然而与之相对应的是当手持设备越来越像一个智能娱乐计算机时,多媒体应用给底层设备计算能力提出了更高的要求。二维SIMD结构是指一个由N×N的处理单元按一定的拓扑结构连接组成的阵列结构,其同行/列的处理单元以SlMD方式工作。由于多媒体应用程序的核心代码由8位或者16位的整数计算所构成,能够充分运用二维SIMD结构每一个处理单元的计算功能,所以利用二维SIMD结构能够获得高性能的多媒体计算,因此对二维SIMD结构的编译优化是获得高性能多媒体计算的重要保证。
本文在深入分析了二维SIMD体系结构和详细研究多媒体应用程序代码的基础上,针对二维SIMD结构受到数据通路和处理单元之间连接方式限制的特性,提出了基于数据划分技术的二维SIMD编译优化算法。数据划分是指将数据映射到各个处理单元中的过程,能使程序执行时有良好的数据局部性。由于能够充分利用数据局部性,所以其是用来解决数据通信受限的一项十分重要的技术。我们的算法在结合数据划分的基础上,对程序计算部分进行划分并映射到不同的处理单元上,使之具有很好的并行性同时能够兼顾降低数据通信的要求。由于结构和优化之间的相互作用,我们在设计算法的同时从编译优化的角度,根据多媒体应用程序的特点和功耗芯片面积对体系结构限制研究分析了不同设计参数对于二维SIMD结构性能的影响,提出设计建议。我们在SimpleScalar基础上实现了一个体系结构模拟器,并在这个平台上测试了算法优化的结果,实验数据显示算法对于多媒体程序有很好的加速比,此外我们还测试配置了不同的参数的结构性能,验证了设计建议。本文的主要贡献如下所述:
设计实现了基于simplescalar的二维SIMD结构性能模拟器提出了基于数据划分的二维SIMD编译优化算法分析研究了不同设计参数对二维SIMD结构性能的影响。