Issue No.04 - July-Aug. (2012 vol.32)
Feng Li , INRIA
Antoniu Pop , INRIA
Albert Cohen , INRIA
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MM.2012.49
This article presents a general algorithm for transforming sequential imperative programs into parallel data-flow programs. The algorithm operates on a program dependence graph in static-single-assignment form, extracting task, pipeline, and data parallelism from arbitrary control flow, and coarsening its granularity using a generalized form of typed fusion. A prototype based on GNU Compiler Collection (GCC) is applied to the automatic parallelization of recursive C programs.
Instruction sets, Parallel processing, Pipeline processing, Synchronization, Radiation detectors, Sequential analysis, SSA form, Instruction sets, Parallel processing, Pipeline processing, Synchronization, Radiation detectors, Sequential analysis, sequential imperative programs, automatic parallelization, data-flow model, loop fusion, program dependence graph
Feng Li, Antoniu Pop, Albert Cohen, "Automatic Extraction of Coarse-Grained Data-Flow Threads from Imperative Programs", IEEE Micro, vol.32, no. 4, pp. 19-31, July-Aug. 2012, doi:10.1109/MM.2012.49