• DocumentCode
    1400887
  • Title

    Formal automatic verification of cache coherence in multiprocessors with relaxed memory models

  • Author

    Pong, Fong ; Dubois, Michel

  • Author_Institution
    Hewlett-Packard Co., Palo Alto, CA, USA
  • Volume
    11
  • Issue
    9
  • fYear
    2000
  • fDate
    9/1/2000 12:00:00 AM
  • Firstpage
    989
  • Lastpage
    1006
  • Abstract
    State-based, formal methods have been successfully applied to the automatic verification of cache coherence in sequentially consistent systems. However, coherence in shared memory multiprocessors under a relaxed memory model is much more complex to verify automatically. With relaxed memory models, incoming invalidations and outgoing updates can be delayed in each cache while processors are allowed to race ahead. This buffering of memory accesses considerably increases the amount of state in each cache and the complexity of protocol interactions. Moreover, because caches can hold inconsistent copies of the same data for long periods of time, coherence cannot be verified by simply checking that cached copies are identical at all times. This paper makes two major contributions. First, we demonstrate how to model and verify cache coherence under a relaxed memory model in the context of state-based verification methods. Frameworks for modeling the hardware and for generating correct memory access sequences driving the hardware model are developed. We also show correctness properties which must be verified on the hardware model. Second, we demonstrate a successful application of a state-based verification tool called SSM for the verification of the delayed protocol, an aggressive protocol for relaxed memory models. SSM is based on an abstraction technique preserving the properties to verify. We show that with classical, explicit approaches the verification of cache coherence is realistically unfeasible because of the state space explosion problem, whereas SSM is able to verify protocols both at both behavioral and message-passing levels.
  • Keywords
    cache storage; formal verification; shared memory systems; buffering; cache coherence; multiprocessors; relaxed memory model; relaxed memory models; shared memory multiprocessors; state-based verification; Access protocols; Buffer storage; Coherence; Computer Society; Context modeling; Delay effects; Explosions; Hardware; State-space methods; Testing;
  • fLanguage
    English
  • Journal_Title
    Parallel and Distributed Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1045-9219
  • Type

    jour

  • DOI
    10.1109/71.879780
  • Filename
    879780