Dual-Thread Speculation: Two Threads in the Machine are Worth Eight in the Bush
Authors: Fredrik Warg and Per Stenström

As chip multiprocessors with simultaneous multithreaded cores are becoming commonplace, there is a need for simple approaches to exploit thread-level parallelism. In this paper, we consider thread-level speculation as a means to reap thread-level parallelism out of application binaries. We first investigate the tradeoffs between scheduling speculative threads on the same core and on different cores. While threads contend for the same resources using the former approach, the latter approach is plagued by the overhead for inter-core communication. Despite the impact of resource contention, our detailed simulations show that the first approach provides the best performance due to lower inter-thread communication cost.

The key contribution of the paper is the proposed design and evaluation of the dual-thread speculation system. This design point has very low complexity and reaps most of the gains of a system supporting eight threads.

Keywords: Multiprocessors, chip-multiprocessors, thread-level speculation, module-level parallelism, misspeculation prediction, performance evaluation, dual-thread speculation.
Fulltext: pdf
Errata: pdf
Published: Proceedings of the 18th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD 2006), October 2006.
DOI: 10.1109/SBAC-PAD.2006.17
Presentation: pdf

Note: This paper won the JĂșlio Salek Aude Award for the best paper at SBAC-PAD 2006.

This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Last modified: