一种动态的变型向量处理器
2014-06-07吴晨曦
吴晨曦,杨 惠
(1.阜阳师范学院数学与计算科学学院,安徽阜阳 236037;2.国防科技大学,长沙 410073)
一种动态的变型向量处理器
吴晨曦1,杨 惠2
(1.阜阳师范学院数学与计算科学学院,安徽阜阳 236037;2.国防科技大学,长沙 410073)
嵌入式应用中,单指令流多数据流(SIMD,single instruction multiple data)结构的向量处理器在蓬勃发展的同时,也面临着如何高效利用其丰富处理资源的问题。在SIMD的向量结构上,处理实际应用中无法被向量化运算的部分,尤其是很多非向量化的循环内部往往含有体间相关,使得SIMD结构的丰富运算资源处于空闲状态。因此,传统的SIMD结构受限于此类应用。提出了一种变型的向量处理器,在保持传统SIMD处理数据并行应用高效性的同时,能够高效地执行包含循环体间数据相关的代码段。实验结果表明,它能获得2.4倍的性能加速,而仅仅占用0.97%的面积开销。
单指令流多数据流;指令级并行;数据级并行;向量处理单元
0 引 言
实际无线通讯和多媒体应用包含了大量结构规整的内部循环。然而,许多循环是不能够向量化的,因为它们包含了循环的体间相关[1]。受限于SIMD的结构特征,传统SIMD结构不能有效地处理此类代码段,因为它们没有机制来加速这类循环的数据流图。在这种情况下,大部分的SIMD运算资源空转。现有研究中,体系结构和编译工作者往往关注于映射计算密集的内部循环在阵列上的加速执行,而忽略了这类循环的有效执行。受限于此类程序固有的指令集并行(ILP,instruction level parallelism)和数据级并行(DLP,instruction level parallelism)度,现有研究[3,4]在处理此类应用时,不能有效地利用SIMD运算资源。……
