IPSJ Digital Courier
Online ISSN : 1349-7456
ISSN-L : 1349-7456
Limits of Thread-Level Parallelism in Non-numerical Programs
Akio NakajimaRyotaro KobayashiHideki AndoToshio Shimada
Author information
JOURNAL FREE ACCESS

2006 Volume 2 Pages 280-288

Details
Abstract

Chip multiprocessors (CMPs), which recently became available with the advance of LSI technology, can outperform current superscalar processors by exploiting thread-level parallelism (TLP). However, the effectiveness of CMPs unfortunately depends greatly on their applications. In particular, they have so far not brought any significant benefit to non-numerical programs. This study explores what techniques are required to extract large amounts of TLP in non-numerical programs. We focus particularly on three techniques: thread partitioning with various control structure levels, speculative thread execution, and speculative register communication. We evaluate these techniques by examining the upper bound of the TLP, using trace-driven simulations. Our results are as follows. First, little TLP can be extracted without both of the speculations in any of the partitioning levels. Second, with the speculations, available TLP is still limited in conventional function-level and loop-level partitioning. However, it increases considerably with basic block-level partitioning. Finally, in basic block-level partitioning, focusing on control-equivalence instead of post-domination can significantly reduce the compile time, with a modest degradation of TLP.

Content from these authors
© 2006 by the Information Processing Society of Japan
Previous article Next article
feedback
Top