Compiler Driven Code Comments and Refactoring

Per Larsen, Razya Ladelsky, Sven Karlsson, Ayal Zaks

    Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review


    Helping programmers write parallel software is an urgent problem given the popularity of multi-core architectures. Engineering compilers which automatically parallelize and vectorize code has turned out to be very challenging. Consequently, compilers are very selective with respect to the coding patterns they can optimize. We present an interactive approach and a tool set which leverages ad- vanced compiler analysis and optimizations while retaining programmer control over the source code and its transformation. This allows opti- mization even when programmers refrain from enabling optimizations to preserve accurate debug information or to avoid bugs in the compiler. It also allows the source code to carry optimizations from one compiler to another. Secondly, our tool-set provides feedback on why optimizations do not apply to a code fragment and suggests workarounds which can be applied automatically. We demonstrate the ability of our tool to trans- form code, and suggest code refactoring that increase its amenability to optimization. The preliminary results shows that, with our tool-set, au- tomatic loop parallelization with the GNU C compiler, gcc, yields 8.6x best-case speedup over the sequential version. The transformations and suggestions are based on the loop parallelization and matrix reorganiza- tion capabilities in the latest production release of gcc.
    Original languageEnglish
    Title of host publicationProceedings of Forth Workshop on Programmability Issues for Heterogeneous Multicores
    Publication date2011
    Publication statusPublished - 2011
    Event4th Workshop on Programmability Issues for Heterogeneous Multicores - Heraklion, Greece
    Duration: 23 Jan 2011 → …
    Conference number: 4


    Workshop4th Workshop on Programmability Issues for Heterogeneous Multicores
    Period23/01/2011 → …
    Internet address


    Dive into the research topics of 'Compiler Driven Code Comments and Refactoring'. Together they form a unique fingerprint.

    Cite this