Abstract:
Simultaneous multithreaded (SMT) processors improve instruction throughput by allowing fetching and running instructions from several threads simultaneously at a single cycle. In this paper, a QoS capable fetch policy for SMT processors is proposed and the related issues about QoS management are discussed. The key idea of the policy is using a priority and a flow speed to control the fetching process of every running thread to fulfill the QoS requirement of it. Compared with the pure-priority-based fetch policy, this scheme not only has the QoS capability, but also utilizes the fetch bandwidth in a more efficient way. Thus it provides a better performance and a higher instruction throughput for SMT processors. The implementation of the fetch policy is simple. Execution-driven simulation results show that besides the QoS capability this policy improves the overall performance of the pure-priority-based fetch policy, ICOUNT, by 15% on average.