Efficient parallel execution of irregular recursive programs

被引:6
|
作者
Prechelt, L [1 ]
Hänssgen, SU [1 ]
机构
[1] abaXX Technol, D-70327 Stuttgart, Germany
关键词
granularity control; irregular problems; recursion; instrumentation; profiling; SMP; benchmarks;
D O I
10.1109/71.983944
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Programs whose parallelism stems from multiple recursion form an interesting subclass of parallel programs with many practical applications. The highly irregular shape of many recursion trees makes it difficult to obtain good load balancing with small overhead. We present a system, called REAPAR, that executes recursive C programs in parallel on SMP machines. Based on data from a single profiling run of the program, REAPAR selects a load-balancing strategy that is both effective and efficient and it generates parallel code implementing that strategy. The performance obtained by REAPAR on a diverse set of benchmarks matches that published for much more complex systems requiring high-level problem-oriented explicitly parallel constructs. A case study even found REAPAR to be competitive to handwritten (low-level, machine-oriented) thread-parallel code.
引用
收藏
页码:167 / 178
页数:12
相关论文
共 50 条
  • [31] Efficient execution of parallel programs using partial strict triggering of program graph nodes
    Ojstersek, M
    Zumer, V
    Pipan, L
    1997 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS, PROCEEDINGS, 1997, : 453 - 459
  • [32] Opportunistic Data-driven Execution of Parallel Programs for Efficient I/O Services
    Zhang, Xuechen
    Davis, Kei
    Jiang, Song
    2012 IEEE 26TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2012, : 330 - 341
  • [33] STUDY OF A PARALLEL INFERENCE MACHINE FOR PARALLEL EXECUTION OF LOGIC PROGRAMS
    YAOQING, G
    CHENGZHENG, S
    SHOUREN, H
    LECTURE NOTES IN COMPUTER SCIENCE, 1990, 457 : 143 - 153
  • [34] AN AND-PARALLEL EXECUTION MODEL OF LOGIC PROGRAMS
    SCHWINN, B
    BARTH, G
    LECTURE NOTES IN COMPUTER SCIENCE, 1986, 213 : 289 - 300
  • [35] PATH FOR AND-PARALLEL EXECUTION OF LOGIC PROGRAMS
    LEE, SH
    KIM, DH
    CHOE, KM
    INFORMATION PROCESSING LETTERS, 1994, 52 (04) : 191 - 199
  • [36] Loop Invariant Symbolic Execution for Parallel Programs
    Siegel, Stephen F.
    Zirkel, Timothy K.
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, 2012, 7148 : 412 - 427
  • [37] Parallel execution of logic programs by load sharing
    Lin, Z
    JOURNAL OF LOGIC PROGRAMMING, 1997, 30 (01): : 25 - 51
  • [38] Visualization of and/or-parallel execution of logic programs
    Vaupel, R
    Pontelli, E
    Gupta, G
    LOGIC PROGRAMMING: PROCEEDINGS OF THE FOURTEENTH INTERNATIONAL CONFERENCE ON LOGIC PROGRAMMING, 1997, : 271 - 285
  • [39] STOCHASTIC BOUNDS ON EXECUTION TIMES OF PARALLEL PROGRAMS
    YAZICIPEKERGIN, N
    VINCENT, JM
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1991, 17 (10) : 1005 - 1012
  • [40] Identifying causes of execution failure for parallel programs
    Liu Y.
    Gao Y.
    Zhang G.
    Guofang Keji Daxue Xuebao/Journal of National University of Defense Technology, 2022, 44 (05): : 45 - 52