首页 | 本学科首页   官方微博 | 高级检索  
     

循环展开技术在向量程序中的应用
引用本文:高伟,赵荣彩,于海宁,张庆花.循环展开技术在向量程序中的应用[J].计算机科学,2016,43(1):226-231, 245.
作者姓名:高伟  赵荣彩  于海宁  张庆花
作者单位:信息工程大学 郑州450001 数学工程与先进计算国家重点实验室 无锡214125,信息工程大学 郑州450001 数学工程与先进计算国家重点实验室 无锡214125,信息工程大学 郑州450001 数学工程与先进计算国家重点实验室 无锡214125,信息工程大学 郑州450001 数学工程与先进计算国家重点实验室 无锡214125
基金项目:本文受“核高基”国家科技重大专项(2009ZX01036-001-001-2),数学工程与先进计算国家重点实验室开放课题(2013A11)资助
摘    要:循环展开是一项常用的循环优化技术。当前针对串行程序的循环展开技术已经比较成熟,但是在实际应用中没有针对向量程序进行有效的循环展开。为了解决这个问题,提出了一种面向向量程序的循环展开技术。首先,针对向量寄存器压力和代码膨胀等限制因素,提出了一种自动计算展开因子的CUFVL算法;其次,根据向量循环展开的特点,制定了完全展开策略;最后结合CUFVL算法和完全展开策略,设计了向量循环展开的总体流程。实验结果表明,该方案能够计算出合适的展开因子,进而对向量程序进行适当的循环展开或完全展开,从而有效提升应用程序的性能。

关 键 词:向量程序  循环展开  展开因子  完全展开
收稿时间:2014/11/13 0:00:00
修稿时间:2015/3/30 0:00:00

Loop Unrolling in Vectorized Programs
GAO Wei,ZHAO Rong-cai,YU Hai-ning and ZHANG Qing-hua.Loop Unrolling in Vectorized Programs[J].Computer Science,2016,43(1):226-231, 245.
Authors:GAO Wei  ZHAO Rong-cai  YU Hai-ning and ZHANG Qing-hua
Affiliation:PLA Information Engineering University,Zhengzhou 450001,China State Key Laboratory of Mathematical Engineering and Advanced Computing,Wuxi 214125,China,PLA Information Engineering University,Zhengzhou 450001,China State Key Laboratory of Mathematical Engineering and Advanced Computing,Wuxi 214125,China,PLA Information Engineering University,Zhengzhou 450001,China State Key Laboratory of Mathematical Engineering and Advanced Computing,Wuxi 214125,China and PLA Information Engineering University,Zhengzhou 450001,China State Key Laboratory of Mathematical Engineering and Advanced Computing,Wuxi 214125,China
Abstract:Loop unrolling is a loop transformation that has been developed well and widely used in serial programs.However,it usually loses its efficiency in practical vectorized applications.To solve this problem,this paper proposed a loop unrolling technique for vectorized loops.First,we presented the CUFVL algorithm to automatically determine the unroll factors via taking the register pressure and code explosion problems into account.Second,we designed a complete unrolling strategy according to the specific characters of vectorized loops.Finally,we showed the flow chart of the proposed technique based on the CUFVL algorithm and the complete unrolling strategy.Experimental results show that the proposed technique can find out the most suitable unroll factor for the programs used in the experiments,thereby enhancing their performance efficiently.
Keywords:Vectorized programs  Loop unrolling  Unroll factor  Complete unrolling
点击此处可从《计算机科学》下载全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号