Skip to Main Content
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.