DocumentCode :
1854473
Title :
Critical-Path-Guided Interactive Parallelisation
Author :
Mak, Jonathan ; Mycroft, Alan
Author_Institution :
Comput. Lab., Univ. of Cambridge, Cambridge, UK
fYear :
2011
fDate :
13-16 Sept. 2011
Firstpage :
427
Lastpage :
436
Abstract :
With the prevalence of multi-core processors, it is essential that legacy programs are parallelised effectively and efficiently. However, compilers have not been able to automatically extract sufficient parallelism in general programs. One of the major reasons, we argue, is that algorithms are often implemented sequentially in a way that unintentionally precludes efficient parallelisation. As manual parallelisation is usually tedious and error-prone, we propose a profiling-based interactive approach to program parallelisation, by presenting a tool-chain with two main components: Embla 2, a dependence-profiler that estimates the amount of task-level parallelism in programs, and Woolifier, a source-to-source transformer that uses Embla 2´s output to parallelise programs using Wool, a Cilk-like API, to express parallelism. Based on profiled dependences, our tool-chain (i) performs an automatic best-effort parallelisation and (ii) presents remaining critical paths in a concise graphical form to the programmer, who can then quickly locate and refactor parallelism bottlenecks. Using case studies from the SPEC CPU 2000 benchmarks, we demonstrate how this tool-chain enables us to efficiently parallelise legacy sequential programs, achieving significant speed-ups on commodity multi-core processors.
Keywords :
application program interfaces; multiprocessing systems; parallel programming; program diagnostics; software maintenance; Cilk-like API; Embla 2; SPEC CPU 2000 benchmarks; Woolifier; critical-path-guided interactive parallelisation; dependence-profiler; legacy sequential programs; multicore processor prevalence; parallelism bottlenecks; profiling-based interactive approach; program parallelisation; source-to-source transformer; task-level parallelism; Arrays; Benchmark testing; Parallel processing; Program processors; Programming; Synchronization; Wool;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel Processing Workshops (ICPPW), 2011 40th International Conference on
Conference_Location :
Taipei City
ISSN :
1530-2016
Print_ISBN :
978-1-4577-1337-8
Electronic_ISBN :
1530-2016
Type :
conf
DOI :
10.1109/ICPPW.2011.26
Filename :
6047052
Link To Document :
بازگشت