Evaluation of a speculative multithreading compiler by characterizing program dependences
Anasua Bhowmik, M. Franklin
Abstract
Anasua Bhowmik, M. Franklin
Abstract
Speculative multithreading (SpMT) promises to be an effective mechanism for parallelizing non-numeric programs. Proper thread formation is crucial for obtaining good speedup in an SpMT system. We have developed an SpMT compiler framework for partitioning sequential programs into multiple threads. Since control and data speculations are the essence of SpMT execution model, inter-thread data dependences and inter-thread control predictions at run-time play crucial roles in affecting the performance of the SpMT system. Therefore, to evaluate existing SpMT compiler or hardware systems, and to design more efficient systems it is necessary to characterize the dynamic program dependences carefully. In this paper, we have studied the run-time behaviors of inter-thread data and control dependences of the threads generated by our compiler in detail and used that for analyzing the performance. The analyses reveal that our compiler has successfully modeled the inter-thread data and control dependences of non-numeric applications and minimized them while generating the threads.
A significance statement is not available in the OpenAlex record.
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.
Speculative multithreading (SpMT) promises to be an effective mechanism for parallelizing non-numeric programs. Proper thread formation is crucial for obtaining good speedup in an SpMT system. We have developed an SpMT compiler framework for partitioning sequential programs into multiple threads. Since control and data speculations are the essence of SpMT execution model, inter-thread data dependences and inter-thread control predictions at run-time play crucial roles in affecting the performance of the SpMT system. Therefore, to evaluate existing SpMT compiler or hardware systems, and to design more efficient systems it is necessary to characterize the dynamic program dependences carefully. In this paper, we have studied the run-time behaviors of inter-thread data and control dependences of the threads generated by our compiler in detail and used that for analyzing the performance. The analyses reveal that our compiler has successfully modeled the inter-thread data and control dependences of non-numeric applications and minimized them while generating the threads.
Key concepts: Thread (computing), Multithreading, Speculative multithreading, Compiler, Computer science, Parallel computing, Speedup, Operating system