Loop Selection for Thread-Level Speculation

13 years 3 months ago
Loop Selection for Thread-Level Speculation
Thread-level speculation (TLS) allows potentially dependent threads to speculatively execute in parallel, thus making it easier for the compiler to extract parallel threads. However, the high cost associated with unbalanced load, failed speculation, and inter-thread value communication makes it difficult to obtain the desired performance unless the speculative threads are carefully chosen. In this paper, we focus on extracting parallel threads from loops in generalpurpose applications because loops, with their regular structures and significant coverage on execution time, are ideal candidates for extracting parallel threads. General-purpose applications, however, usually contain a large number of nested loops with unpredictable parallel performance and dynamic behavior, thus making it difficult to decide which set of loops should be parallelized to improve overall program performance. Our proposed loop selection algorithm addresses all these difficulties. We have found that (i) with th...
Shengyue Wang, Xiaoru Dai, Kiran Yellajyosula, Ant
Added 28 Jun 2010
Updated 28 Jun 2010
Type Conference
Year 2005
Where LCPC
Authors Shengyue Wang, Xiaoru Dai, Kiran Yellajyosula, Antonia Zhai, Pen-Chung Yew
Comments (0)