This Article 
 Bibliographic References 
 Add to: 
DCC: A Dependable Cache Coherence Multicore Architecture
January-June 2011 (vol. 10 no. 1)
pp. 12-15
Omer Khan, Massachusetts Institute of Technology, Cambridge
Mieszko Lis, Massachusetts Institute of Technology, Cambridge
Yildiz Sinangil, Massachusetts Institute of Technology, Cambridge,
Srinivas Devadas, Massachusetts Institute of Technology, Cambridge
Cache coherence lies at the core of functionally-correct operation of shared memory multicores. Traditional directory-based hardware coherence protocols scale to large core counts, but they incorporate complex logic and directories to track coherence states. Technology scaling has reached miniaturization levels where manufacturing imperfections, device unreliability and occurrence of hard errors pose a serious dependability challenge. Broken or degraded functionality of the coherence protocol can lead to a non-operational processor or user visible performance loss. In this paper, we propose a dependable cache coherence architecture (DCC) that combines the traditional directory protocol with a novel execution-migration-based architecture to ensure dependability that is transparent to the programmer. Our architecturally redundant execution migration architecture only permits one copy of data to be cached anywhere in the processor: when a thread accesses an address not locally cached on the core it is executing on, it migrates to the appropriate core and continues execution there. Both coherence mechanisms can co-exist in the DCC architecture and we present architectural extensions to seamlessly transition between the directory and execution migration protocols.
Index Terms:
C.4.b Fault tolerance, B.3.4 Reliability, Testing, and Fault-Tolerance, B.8 Performance and Reliability
Omer Khan, Mieszko Lis, Yildiz Sinangil, Srinivas Devadas, "DCC: A Dependable Cache Coherence Multicore Architecture," IEEE Computer Architecture Letters, vol. 10, no. 1, pp. 12-15, Jan.-June 2011, doi:10.1109/L-CA.2011.3
Usage of this product signifies your acceptance of the Terms of Use.