“核心电子器件、高端通用芯片及基础软件产品”国家科技重大专项(2009zx10036-001-001)
- 作品数:6 被引量:19H指数:3
- 相关作者:赵荣彩徐金龙丁锐赵博徐晓燕更多>>
- 相关机构:中国人民解放军信息工程大学解放军信息工程大学更多>>
- 发文基金:国家高技术研究发展计划国家科技重大专项更多>>
- 相关领域:自动化与计算机技术更多>>
- 面向循环的混合向量化方法研究被引量:4
- 2014年
- 目前主流的两种向量化算法基于循环(loop-based)的向量化算法和超字并行(SLP)算法分别适用于不同特征的循环,前者适用于发掘迭代间的并行,后者擅于发掘迭代内的并行.向量化算法的选择将直接影响最终的向量化效果.为了增强向量化能力,提高向量化效率,根据目标循环的特征确定了向量化任务分配方案,并设计了一种混合的向量化框架来实现这种任务分配方案,旨在将两种向量化方法结合,充分发挥各自优势.同时,为了明确目标循环并行性特征,本文给出了迭代间和迭代内的向量并行性检测方法.实验结果及分析表明,本文提供的方法明显提高了向量化的识别能力,能够实现更合理的向量化任务分配.
- 徐金龙赵荣彩丁锐
- 程序向量化中非规则访存问题研究被引量:2
- 2015年
- 现有的程序向量化方法通常仅支持连续访存模式,而不支持非连续的内存访问。为实现更多程序的向量并行,提出一种向量化非规则访存处理方法。对访存特征进行检测分类,针对不同特征给出对应的向量化方案,同时设计收益分析方法,以保证向量化的有效性。实验结果表明,该方法可有效提高向量化能力,实现复杂访存形式的程序向量化。
- 徐金龙赵荣彩刘鹏李晓亮
- 关键词:向量化数据重组
- SIMD代码中的向量访存优化研究被引量:1
- 2015年
- 向量程序来源于手工编写或由编译器自动生成。受限于编程人员和并行编译器的能力,得到的向量程序都存在一定的优化空间。优化编译器通常关注如何将串行程序向量化,但很少对向量程序进行优化。因此,提出了一种针对SIMD代码的向量访存优化方法。该方法首先分析程序是否需要优化,若存在需求,则对程序同时进行深度冗余优化和对齐优化。实验数据显示,提出的方法可以明显提高程序的运行效率,达到了目标。
- 徐金龙赵荣彩徐晓燕
- 关键词:向量化SIMD
- SIMD向量指令的非满载使用方法研究被引量:3
- 2015年
- 大规模SIMD体系结构提供了更强的向量并行硬件支持,但是,大量迭代次数不足的循环由于不能提供足够的并行性,难以用等价的向量方式实现。为了更有效地利用SIMD,提出了一种非满载地使用SIMD指令的向量化方法。研究了向量寄存器的使用方式,基于非满载的向量寄存器使用方式实现了非满载的向量操作和短循环的向量化,并将非满载的向量化方法用于一般循环的向量化。提供了收益分析方法来为本向量化方法作精确指导。实验结果表明了该方法的有效性,所选测试用例的目标循环被向量化,平均加速比达到1.2。
- 徐金龙赵荣彩赵博
- 关键词:向量化
- 一种基于数组生命期的数据分解算法
- 2013年
- 划分是一种自动分配计算和数据到各个处理器的编译技术,是分布存储结构下并行编译的核心问题.以往的划分研究较少从生命期的角度考虑数据分解问题,分解在数组的不同生命期中不一致时会产生冗余通信.为解决上述问题,提出了一种数据分解算法,通过定义-引用图来表示数组的数据流信息,并使用分解映射表为数组不同的生命期建立各自的数据分解.对矩阵求逆等9个实际用例的实验结果表明,与以往不区分生命期的划分研究相比,使用所提算法能够在寻找数据分解时对并行收益做出更准确的评估,减少了通信冗余,从而提升了自动生成的并行代码的加速比.
- 丁锐赵荣彩韩林
- 关键词:数据分解自动并行化
- 分段约束的超字并行向量发掘路径优化算法被引量:11
- 2015年
- 超字并行(SLP)是一种针对基本块的向量并行发掘方法,结合循环展开可以发掘更多的并行性,但同时也会产生过多的发掘路径。针对上述问题,提出了一种分段约束的SLP发掘路径优化算法;采用分段的冗余删除方法,来保证冗余删除后段的同构性。采用段间的SLP发掘,来约束发掘路径;最后进行pack调整来处理访存重叠的情况。实验结果表明,该方法有效增强了SLP向量化功能,对于测试程序,向量化的平均加速比接近2。
- 徐金龙赵荣彩韩林
- 关键词:向量化同构