A Novel Speculative Multithreading Parallelization Method in Chip Multiprocessor Systems
Yue Wu, Lei Xu, Yang Hong-bin
Abstract
Yue Wu, Lei Xu, Yang Hong-bin
Abstract
Chip multiprocessors have become mainstream processors in recent years. In this paper, we propose a novel speculative multithreading parallelization method for parallelizing a sequential program into multiple threads. In our method, extended program dependence graph and topological sort are used to analyze code dependency. With the help of dynamic profiling, we exploit thread level parallelism in loops and the remaining code regions by analyzing control and data speculation in general purpose applications. Using an initial automatic compiler implementation and a validated processor model, this paper demonstrates significant gains using speculation for 4-core chip multiprocessor models running a variety of applications.
OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Chip multiprocessors have become mainstream processors in recent years. In this paper, we propose a novel speculative multithreading parallelization method for parallelizing a sequential program into multiple threads. In our method, extended program dependence graph and topological sort are used to analyze code dependency. With the help of dynamic profiling, we exploit thread level parallelism in loops and the remaining code regions by analyzing control and data speculation in general purpose applications. Using an initial automatic compiler implementation and a validated processor model, this paper demonstrates significant gains using speculation for 4-core chip multiprocessor models running a variety of applications.
Key concepts: Speculative multithreading, Computer science, Parallel computing, Multithreading, Multiprocessing, Thread (computing), Simultaneous multithreading, Task parallelism