Transactions of the Institute of Systems, Control and Information Engineers
Online ISSN : 2185-811X
Print ISSN : 1342-5668
ISSN-L : 1342-5668
Papers
Program Execution Path-Based Speculative Thread Partitioning
Kanemitsu OotsuHirohito OgawaTakashi YokotaTakanobu Baba
Author information
JOURNAL FREE ACCESS

2009 Volume 22 Issue 6 Pages 209-219

Details
Abstract

Nowadays, multi-core processor, a multi processor system on a single chip, is widely available, and the processing capacity of computer system is highly extended. However, parallelization of computer program at the thread level, namely multithreading, is required in order to shorten the execution time of (in other words, to speed up) the single program by sufficiently utilizing the power of the multi-core processor.
In this paper, we propose a method of thread partitioning that partitions a single program code into parallel threads. The method intends for programs which is hardly sped up by conventional multithreading techniques, and the method is based on a speculative thread execution model. In the method, a program code is partitioned into threads based on the frequencies of the program execution path (the execution sequence of the program basic blocks). Partitioning of program code along the most frequently executed path and no data dependencies between partitioned threads allow each thread to execute in parallel and the program can be sped up.
For the purpose of clarifing the performance achieved by our proposed method, the method is applied to the practical program code, that is difficult to speedup by utilizing the parallelism at loop level, and the cycle-level processor simulation is performed.

Content from these authors
© 2009 The Institute of Systems, Control and Information Engineers
Next article
feedback
Top