Abstract:
The simultaneous multithreading technique permits multiple issues from different threads simultaneously, which provides nature support for fault-tolerance by executing threads redundantly. Redundant multithreading (RMT) copies each thread into two copies that performances independently, and the corresponding results from the two threads are compared for detecting or tolerating faults. Most RMT structures adopt ICOUNT thread scheduling, which may suffer from long instruction latency. Long latency instructions may stay in critical resources (such as rename register file, instruction queue) for a long time with no contribution to the performance, and the other threads cannot obtain enough resources at the same time. So critical resources cannot be used efficiently, which causes the throughput and the single thread performance degradation. In the paper, a novel rename register allocation method called matching share (MS) is proposed. In N-contexts processor, the rename register file is divided into N copies, one of which is shared by a master thread and its corresponding slave thread, which may avoid the competition of rename register among different threads, and the sharing between master threads and slave threads avoids the drop of resource utilization. The experimental results show that the proposed MS strategy enhances both throughput and performance of single thread.