Run-time parallelization: Its time has come

被引:13
|
作者
Rauchwerger, L [1 ]
机构
[1] Texas A&M Univ, Dept Comp Sci, College Stn, TX 77843 USA
关键词
parallelization; speculative; run-time; inspector/executor; compiler; scheduling; debugging; pointer aliasing; subscripted scripts; irregular applications;
D O I
10.1016/S0167-8191(98)00024-6
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Current parallelizing compilers cannot identify a significant fraction of parallelizable loops because they have complex or statically insufficiently defined access patterns. This type of loop mostly occurs in irregular, dynamic applications which represent more than 50% of all applications [K. Kennedy, Compiler technology for machine-independent programming, Int. J. Paral. Prog. 22 (1) (1994) 79-98]. Making parallel computing succeed has therefore become conditioned by the ability of compilers to analyze and extract the parallelism from irregular applications. In this paper we present a survey of techniques that can complement the current compiler capabilities by performing some form of data dependence analysis during program execution, when all information is available. After describing the problem of loop parallelization and its difficulties, a general overview of the need for techniques of run-time parallelization is given. A survey of the various approaches to parallelizing partially parallel loops and fully parallel loops is presented. Special emphasis is placed on two parallelism enabling transformations, privatization and reduction parallelization, because of their proven efficiency. The technique of speculatively parallelizing doall loops is presented in more detail. This survey limits itself to the domain of Fortran applications parallelized mostly in the shared mory paradigm. Related work from the field of parallel debugging and parallel simulation is also described. (C) 1998 Elsevier Science B.V. All rights reserved.
引用
收藏
页码:527 / 556
页数:30
相关论文
共 50 条
  • [1] RUN-TIME PARALLELIZATION AND SCHEDULING OF LOOPS
    SALTZ, JH
    MIRCHANDANEY, R
    BAXTER, D
    [J]. SPAA 89: PROCEEDINGS OF THE 1989 ACM SYMPOSIUM ON PARALLEL ALGORITHMS AND ARCHITECTURES, 1989, : 303 - 312
  • [2] Principles of speculative run-time parallelization
    Patel, D
    Rauchwerger, L
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 1999, 1656 : 323 - 337
  • [3] RUN-TIME PARALLELIZATION AND SCHEDULING OF LOOPS
    SALTZ, JH
    MIRCHANDANEY, R
    CROWLEY, K
    [J]. IEEE TRANSACTIONS ON COMPUTERS, 1991, 40 (05) : 603 - 612
  • [4] Run-time parallelization for partially parallel loops
    Yang, CT
    Tseng, SS
    Kao, SH
    Hsieh, MH
    Jiang, MF
    [J]. 1997 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS, PROCEEDINGS, 1997, : 308 - 313
  • [5] Techniques for reducing the overhead of run-time parallelization
    Yu, H
    Rauchwerger, L
    [J]. COMPILER CONSTRUCTION, PROCEEDINGS, 2000, 1781 : 232 - 248
  • [6] A scalable method for run-time loop parallelization
    Rauchwerger, L
    Amato, NM
    Padua, DA
    [J]. INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 1995, 23 (06) : 537 - 576
  • [7] Time-stamping algorithms for parallelization of loops at run-time
    Xu, CZ
    Chaudhary, V
    [J]. 11TH INTERNATIONAL PARALLEL PROCESSING SYMPOSIUM, PROCEEDINGS, 1997, : 443 - 450
  • [8] Efficient run-time parallelization for DO loops
    Yang, CT
    Tseng, SS
    Hsieh, MH
    Kao, SH
    [J]. JOURNAL OF INFORMATION SCIENCE AND ENGINEERING, 1998, 14 (01) : 237 - 253
  • [9] Run-Time Support for the Automatic Parallelization of Java Programs
    Bryan Chan
    Tarek S. Abdelrahman
    [J]. The Journal of Supercomputing, 2004, 28 : 91 - 117
  • [10] Exploiting locality in the run-time parallelization of irregular loops
    Martín, MJ
    Singh, DE
    Touriño, J
    Rivera, FF
    [J]. 2002 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, PROCEEDING, 2002, : 27 - 34