System performance enhancement with thread suspension for simultaneous multi-threading processors. Issue 8 (16th November 2020) - Wang, Wenjun; Lin, Wei-Ming
ABSTRACT: Simultaneous Multi-Threading systems improve performance by allowing multiple independent threads to be executed concurrently with shared key resources. Unfair sharing of resources among multiple threads can easily clog the pipeline stages by slower threads and hamper the normal processing of faster threads. In this paper, we propose a thread-suspension scheme combined with a uniform register file capping technique to avoid imbalanced distribution of resources. When a shared resource congestion occurs on the pipeline stages, the thread with the lowest resource utilization efficiency among all active threads will be suspended so as to provide other threads more space to proceed for a higher throughput. Our experimental results show that our proposed technique improves the average system throughput in terms of Instruction Per Clock Cycle by up to 51.3%, with little compromise in execution fairness.