Dynamic verification of sequential consistency

Journal Article

In this paper, we develop the first feasibly implementable scheme for end-to-end dynamic verification of multithreaded memory systems. For multithreaded (including multiprocessor) memory systems, end-to-end correctness is defined by its memory consistency model. One such consistency model is sequential consistency (SC), which specifies that all loads and stores appear to execute in a total order that respects program order for each thread. Our design, DVSC-Indirect, performs dynamic verification of SC (DVSC) by dynamically verifying a set of sub-invariants that, when taken together, have been proven equivalent to SC. We evaluate DVSC-Indirect with full-system simulation and commercial workloads. Our results for multiprocessor systems with both directory and snooping cache coherence show that DVSC-Indirect detects all injected errors that affect system correctness (i.e., SC). We show that it uses only a small amount more bandwidth (less than 25%) than an unprotected system and thus can achieve comparable performance when provided with only modest additional link bandwidth. © 2005 IEEE.

Full Text

Duke Authors

Cited Authors

  • Meixner, A; Sorin, DJ

Published Date

  • November 10, 2005

Published In

Start / End Page

  • 482 - 493

International Standard Serial Number (ISSN)

  • 1063-6897

Digital Object Identifier (DOI)

  • 10.1109/ISCA.2005.25

Citation Source

  • Scopus