Prophet: A Speculative Multi-threading Execution Model with Architectural Support Based on CMP
Dong Zhaoyu, Gao Bing, Zhao Yinliang, Song Shaolong, Du Yanning

TL;DR
Prophet introduces a speculative multi-threading execution model with architectural support for CMP, utilizing prediction and multi-versioning to enhance parallelism and reduce data dependency violations.
Contribution
It proposes a novel speculative multi-threading model with architectural mechanisms like p-slices and multi-versioning caches for CMP systems.
Findings
Achieves significant speedup in general-purpose programs
Reduces RAW violations through prediction mechanisms
Demonstrates effectiveness via simulation results
Abstract
Speculative multi-threading (SpMT) has been proposed as a perspective method to exploit Chip Multiprocessors (CMP) hardware potential. It is a thread level speculation (TLS) model mainly depending on software and hardware co-design. This paper researches speculative thread-level parallelism of general purpose programs and a speculative multi-threading execution model called Prophet is presented. The architectural support for Prophet execution model is designed based on CMP. In Prophet the inter-thread data dependency are predicted by pre-computation slice (p-slice) to reduce RAW violation. Prophet multi-versioning Cache system along with thread state control mechanism in architectural support are utilized for buffering the speculative data, and a snooping bus based cache coherence protocol is used to detect data dependence violation. The simulation-based evaluation shows that the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
