POWER: Parallel Optimizations With Executable Rewriting

Nipun Arora; Jonathan Schaffer Bell; Martha Allen Kim; Vishal Singh; Gail E. Kaiser

POWER: Parallel Optimizations With Executable Rewriting
Arora, Nipun
Bell, Jonathan Schaffer
Kim, Martha Allen
Singh, Vishal
Kaiser, Gail E.
Technical reports
Computer Science
Permanent URL:
Columbia University Computer Science Technical Reports
Part Number:
Department of Computer Science, Columbia University
Publisher Location:
New York
The hardware industry's rapid development of multicore and many core hardware has outpaced the software industry's transition from sequential to parallel programs. Most applications are still sequential, and many cores on parallel machines remain unused. We propose a tool that uses data-dependence profiling and binary rewriting to parallelize executables without access to source code. Our technique uses Bernstein's conditions to identify independent sets of basic blocks that can be executed in parallel, introducing a level of granularity between fine-grained instruction level and coarse grained task level parallelism. We analyze dynamically generated control and data dependence graphs to find independent sets of basic blocks which can be parallelized. We then propose to parallelize these candidates using binary rewriting techniques. Our technique aims to demonstrate the parallelism that remains in serial application by exposing concrete opportunities for parallelism.
Computer science
Item views:
text | xml
Suggested Citation:
Nipun Arora, Jonathan Schaffer Bell, Martha Allen Kim, Vishal Singh, Gail E. Kaiser, 2011, POWER: Parallel Optimizations With Executable Rewriting, Columbia University Academic Commons, http://hdl.handle.net/10022/AC:P:10530.

In Partnership with the Center for Digital Research and Scholarship at Columbia University Libraries | Terms of Use | Copyright