Computer Science ›› 2017, Vol. 44 ›› Issue (5): 14-19.doi: 10.11896/j.issn.1002-137X.2017.05.003

Previous Articles     Next Articles

Auto-parallelization Research Based on Branch Nested Loops

DING Li-li, LI Yan-bing, ZHANG Su-ping, WANG Peng-xiang and ZHANG Qing-hua   

  • Online:2018-11-13 Published:2018-11-13

Abstract: GCC compiler is an open source compiler system which has won favour among many researchers,however,it is only able to analyze the dependence of perfect nested loop.In order to efficiently explore the granularity parallelism of nested loop,we deeply analyzed the data dependence of GCC5.1 and put forward a dependence testing method of handling branch nested loop.At first,the branch nested loop is recognized.Then,the relationship between array index and index variable of outer loop is identfied.At last,the distance vector of outer loop is computed,and whether the loop has carried dependence or not is decided by examining the distance vector.The experimental results show that the proposed method can effectively recognize the dependence of branch nested loop.

Key words: Data dependence analysis,GCC,Perfect nested loop,Branch nested loops,Distance vector

[1] HAN L.Research on Consistent Optimization Techiniques ofParallel Decomposition for Distributed memory Architecture[D].Zhengzhou:The PLA Information Engineering University,2008.(in Chinese) 韩林.面向分布存储结构的并行分解一致性优化技术研究[D].郑州:解放军信息工程大学,2008.
[2] HALL M W,AMARASINGHE S P,MURPHY B R,et al.Interprocedural parallelization analysis in SUIF[J].ACM Tran-sactions on Programming Languages and Systems,2005,27(4):662-731.
[3] LIN M,YU Z Y,ZHANG D,ZHU Y M,et al.Retargeting the Open64 Compiler to PowerPC Processor[C]∥Proceedings of Embedded Software and Systems Symposia,2008.San Francisco:IEEE Computer Society Press,2008:152-157.
[4] ALLEN R,KENNEDY K.Optimizing Compilers for Modern Ar-chitectures[M].California:Morgan Kaufmann Publisher,2005.
[5] RADHIKA D.Venkatasubramanyam.Array Access Analysis in Open64[D].Houston:University of Houston,2004.
[6] ZHAO Q,BRUENING D,AMARASINGHE S.Umbra:efficient and scalable memory shadowing[C]∥Proceedings of the 8th International Symposium on Code Generation and Optimization (CGO).2010:22-31.
[7] NETHERCOTE N,SEWARD J.How to shadow every byte of memory used by a program[C]∥Proceedings of the 3rd International Conference on Virtual Execution Environments (VEE).2007:65-74.
[8] BERLIN D,EDELSOHN D.High-level loop optimizations forGCC[C]∥Proceedings of the Gcc Developers Summit.2004:37-54.
[9] ZENG Y L,YANG C Q,HUANG C.Analysis and Improve-ment of the GCC 4.1 Data Dependence Analyzer[J].Computer Engineering & Science,2006,28(10):104-106.(in Chinese) 曾利永,杨灿群,黄春.GCC 4.1数据依赖分析器的分析与改进[J].计算机工程与科学,2006,28(10):104-106.
[10] ZHANG Q S,LI Y,FAN Z D,et al.Automatic Parallelizationfor Loops Carried Data Dependence Between Itreations[J].Journal of Chines Computer Systems,2014(6):1293-1297.(in Chinese) 张琼声,李莹,范志东,等.含有跨迭代数据依赖关系循环的自动并行化[J].小型微型计算机系统,2014(6):1293-1297.
[11] KUMAR S S,CHAHAR A,VAN LEUKEN R.Cit:A GCCPlugin for the Analysis and Characterization of Data Dependencies in Parallel Programs[J/OL].http://cas.et.tudelft.nl/pubs/kumar_DCIS_2013.pdf.

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!