Automatic parallelization: An overview of fundamental compiler techniques

被引:0
|
作者
Midkiff, Samuel P. [1 ]
机构
[1] Purdue University, United States
关键词
Program compilers - Memory architecture;
D O I
10.2200/S003401D1V01Y201201CAC019
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Compiling for parallelism is a longstanding topic of compiler research. This book describes the fundamental principles of compiling regular numerical programs for parallelism.We begin with an explanation of analyses that allow a compiler to understand the interaction of data reads and writes in different statements and loop iterations during program execution. These analyses include dependence analysis, use-def analysis and pointer analysis. Next, we describe how the results of these analyses are used to enable transformations that make loops more amenable to parallelization, and discuss transformations that expose parallelism to target shared memory multicore and vector processors. We then discuss some problems that arise when parallelizing programs for execution on distributed memory machines. Finally, we conclude with an overview of solving Diophantine equations and suggestions for further readings in the topics of this book to enable the interested reader to delve deeper into the field. Copyright © 2012 by Morgan & Claypool.
引用
收藏
页码:1 / 169
相关论文
共 50 条
  • [31] A FUNDAMENTAL MISTAKE IN COMPILER DESIGN
    FEY, EH
    [J]. DR DOBBS JOURNAL, 1983, 8 (03): : 71 - 73
  • [32] A TOOL FOR EVALUATING COMPILER-BASED PARALLELIZATION STRATEGIES
    ANAND, TS
    GUPTA, R
    [J]. MATHEMATICS AND COMPUTERS IN SIMULATION, 1989, 31 (4-5) : 509 - 516
  • [33] Automatic loop parallelization
    Kumar, M
    Patnaik, LM
    [J]. COMPUTER JOURNAL, 1997, 40 (06): : 301 - 301
  • [34] Automatic Loops Parallelization
    Goncalves, Cristiano Oliveira
    Spolon, Roberta
    Lobato, Renata Spolon
    Manacero, Aleardo, Jr.
    Lobato, Daniel Correa
    [J]. PROCEEDINGS OF THE 2014 9TH IBERIAN CONFERENCE ON INFORMATION SYSTEMS AND TECHNOLOGIES (CISTI 2014), 2014,
  • [35] Presentation of fundamental processing techniques for automatic target detection
    Gilbert, G
    [J]. AUTOMATIC TARGET RECOGNITION IX, 1999, 3718 : 416 - 429
  • [36] Tool for evaluating compiler-based parallelization strategies
    [J]. Anand, Tejwansh S., 1600, (31): : 4 - 5
  • [37] Compiler estimation of load imbalance overhead in speculative parallelization
    Dou, JL
    Cintra, M
    [J]. 13TH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURE AND COMPILATION TECHNIQUES, PROCEEDINGS, 2004, : 203 - 214
  • [38] Automatic selection of compiler options using genetic techniques for embedded software design
    Nagiub, Mena
    Farag, Wael
    [J]. 14TH IEEE INTERNATIONAL SYMPOSIUM ON COMPUTATIONAL INTELLIGENCE AND INFORMATICS (CINTI), 2013, : 69 - 74
  • [39] FFT compiler techniques
    Kral, S
    Franchetti, F
    Lorenz, J
    Ueberhuber, CW
    Wurzinger, P
    [J]. COMPILER CONSTRUCTION, PROCEEDINGS, 2004, 2985 : 217 - 231
  • [40] Overview of speech enhancement techniques for automatic speaker recognition
    OrtegaGarcia, J
    GonzalezRodriguez, J
    [J]. ICSLP 96 - FOURTH INTERNATIONAL CONFERENCE ON SPOKEN LANGUAGE PROCESSING, PROCEEDINGS, VOLS 1-4, 1996, : 929 - 932