29th Annual International Symposium on Computer Architecture (ISCA), 2002 Detailed Design and Evaluation of Redundant Multithreading Alternatives* Shubhendu S. Mukherjee Michael Kontz Steven K. Reinhardt VSSAD Colorado VLSI Lab EECS Department Massachusetts Microprocessor Design Center Systems & VLSI Technology Operations University of Michigan, Ann Arbor Intel Corporation Hewlett-Packard Company 1301 Beal Avenue 334 South Street, SHR1-T25 3404 East Harmony Road, ms 55 Ann Arbor, MI 48109-2122 Shrewsbury, MA 01545 Fort Collins, CO 80525
[email protected] [email protected] [email protected] ABSTRACT techniques in forthcoming dual-processor single-chip devices. Exponential growth in the number of on-chip transistors, coupled Our implementation of the single-processor RMT device is based with reductions in voltage levels, makes each generation of on the previously published simultaneous and redundantly threaded microprocessors increasingly vulnerable to transient faults. In a (SRT) processor design [15] (Figure 1a). However, unlike previous multithreaded environment, we can detect these faults by running evaluations, we start with an extremely detailed performance model two copies of the same program as separate threads, feeding them of an aggressive, commercial-grade SMT microprocessor identical inputs, and comparing their outputs, a technique we call resembling the Compaq Alpha Araña (a.k.a. 21464 or EV8) [12]. Redundant Multithreading (RMT). We call this our base processor. We found several subtle issues This paper studies RMT techniques in the context of both single- involved in adding SRT features to such a base SMT design. For and dual-processor simultaneous multithreaded (SMT) single-chip example, adapting the SRT branch outcome queue, which uses devices.