Hiroyoshi Jutori, Kanemitsu Ootsu, Takashi Yokota, and Takanobu Baba
thread-level parallel processing, speculative multithreading, path profiling, dynamic optimization
Speculative multithreading is one of the most hopeful methods for speeding up the execution of programs in multicore systems. Each loop has a lot of possible execution paths, however, only a few of them are executed frequently in many cases. We focus two-path limited speculation method, that speculates only the most frequent two paths based on path profiling results of the whole program execution using path profiling. To maximize the performance of the method, this paper discusses `phased behavior' in program execution. This paper firstly shows actual behaviors in program execution in terms of execution paths. Then, we introduce practical methods of dynamic selection of speculation paths. Preliminary estimation results show that realistically optimal method performs 1.78 times speedup at the maximum and also that the practical method can increase speculation success ratio up to 10 percents.
Important Links:
Go Back