This is the first book to thoroughly describe some of the speculative execution techniques used to overcome performance
problems in modern computer architectures. It discusses both cutting-edge research projects as well as a number of commercial implementations that illustrate the value of this latency-hiding technique. A review section covers various control speculation techniques that use instruction cache prefetching, branch prediction, and multipath execution. The authors also address several more recent speculative multithreaded
approaches with an emphasis on profile-guided speculation, speculative architectures, and the compiler techniques needed to support these approaches. Kaeli; David Northeastern University, Boston, Massachusetts, USA,Yew; Pen-Chung University of Minnesota, Minneapolis, Minnesota, USA,