Issue No.01 - January/February (2011 vol.28)
Danny Dig , University of Illinois at Urbana-Champaign
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2011.1
In the multicore era, a major programming task will be to make programs more parallel. This is tedious because it requires changing many lines of code; it's also error-prone and nontrivial because programmers need to ensure noninterference of parallel operations. Fortunately, interactive refactoring tools can help reduce the analysis and transformation burden. The author describes how refactoring tools can improve programmer productivity, program performance, and program portability. The article also describes a toolset that supports several refactorings for making programs thread-safe, threading sequential programs for throughput, and improving scalability of parallel programs.
refactoring, parallelism, concurrency
Danny Dig, "A Refactoring Approach to Parallelism", IEEE Software, vol.28, no. 1, pp. 17-22, January/February 2011, doi:10.1109/MS.2011.1