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
相关论文
共 24 条