From Sequential Programs to Concurrent Threads [abstract] (IEEE Xplore, PDF)
Guilherme Ottoni, Ram Rangan, Adam Stoler, Matthew J. Bridges, and David I. August
IEEE Computer Architecture Letters (CAL), June 2005.
Chip multiprocessors are of increasing importance due to recent
difficulties in achieving higher clock frequencies in uniprocessors,
but their success depends on finding useful work for the processor
cores. This paper addresses this challenge by presenting a simple
compiler approach that extracts non-speculative thread-level
parallelism from sequential codes. We present initial results from
this technique targeting a validated dual-core processor model,
achieving speedups ranging from 9-48% with an average of 25% for
important benchmark loops over their single-threaded versions. We
also identify important next steps found during our pursuit of higher
degrees of automatic threading.