Cache coherence protocols: evaluation using a multiprocessor simulation model
ACM Transactions on Computer Systems (TOCS)
Theory of linear and integer programming
Theory of linear and integer programming
Reasoning about networks with many identical finite state processes
Information and Computation
Reasoning about systems with many processes
Journal of the ACM (JACM)
The cache memory book
Automatic generation of functional vectors using the extended finite state machine model
ACM Transactions on Design Automation of Electronic Systems (TODAES)
Verification techniques for cache coherence protocols
ACM Computing Surveys (CSUR)
Verification of Real-Time Systems using Linear Relation Analysis
Formal Methods in System Design - Special issue on computer aided verification (CAV 93)
Automatic verification of parameterized linear networks of processes
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Verifying parameterized networks
ACM Transactions on Programming Languages and Systems (TOPLAS)
Verifying Systems with Replicated Components in Mur&b.phiv;
Formal Methods in System Design
Well-structured transition systems everywhere!
Theoretical Computer Science
Ensuring completeness of symbolic verification methods for infinite-state systems
Theoretical Computer Science
A New Approach for the Verification of Cache Coherence Protocols
IEEE Transactions on Parallel and Distributed Systems
Automatic Deductive Verification with Invisible Invariants
TACAS 2001 Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Constraint-Based Verification of Client-Server Protocols
CP '01 Proceedings of the 7th International Conference on Principles and Practice of Constraint Programming
Symbolic Model Checking with Rich ssertional Languages
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Construction of Abstract State Graphs with PVS
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Verifying Systems with Infinite but Regular State Spaces
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
Automatic Verification of Parameterized Cache Coherence Protocols
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
Liveness and Acceleration in Parameterized Verification
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
Delay Analysis in Synchronous Programs
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Symbolic Model Checking of Infinite State Systems Using Presburger Arithmetic
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Verification of the Futurebus+ Cache Coherence Protocol
CHDL '93 Proceedings of the 11th IFIP WG10.2 International Conference sponsored by IFIP WG10.2 and in cooperation with IEEE COMPSOC on Computer Hardware Description Languages and their Applications
HYTECH: A Model Checker for Hybrid Systems
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
General decidability theorems for infinite-state systems
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
On Model Checking for Non-Deterministic Infinite-State Systems
LICS '98 Proceedings of the 13th Annual IEEE Symposium on Logic in Computer Science
On the Verification of Broadcast Protocols
LICS '99 Proceedings of the 14th Annual IEEE Symposium on Logic in Computer Science
Better is Better than Well: On Efficient Verification of Infinite-State Systems
LICS '00 Proceedings of the 15th Annual IEEE Symposium on Logic in Computer Science
A low-overhead coherence solution for multiprocessors with private cache memories
ISCA '84 Proceedings of the 11th annual international symposium on Computer architecture
Distributed Computing - Special issue: Verification of lazy caching
Automatic generation of polynomial invariants of bounded degree using abstract interpretation
Science of Computer Programming
Temporal Verification of Fault-Tolerant Protocols
Methods, Models and Tools for Fault Tolerance
Approximated Context-Sensitive Analysis for Parameterized Verification
FMOODS '09/FORTE '09 Proceedings of the Joint 11th IFIP WG 6.1 International Conference FMOODS '09 and 29th IFIP WG 6.1 International Conference FORTE '09 on Formal Techniques for Distributed Systems
Automatic Verification of Directory-Based Consistency Protocols
RP '09 Proceedings of the 3rd International Workshop on Reachability Problems
Action Language verifier: an infinite-state model checker for reactive software specifications
Formal Methods in System Design
Concurrency control generation for dynamic threads using discrete-event systems
Allerton'09 Proceedings of the 47th annual Allerton conference on Communication, control, and computing
Towards verification via supercompilation
COMPSAC-W'05 Proceedings of the 29th annual international conference on Computer software and applications conference
Reachability as derivability, finite countermodels and verification
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
Program specialization for verifying infinite state systems: an experimental evaluation
LOPSTR'10 Proceedings of the 20th international conference on Logic-based program synthesis and transformation
Improving reachability analysis of infinite state systems by specialization
RP'11 Proceedings of the 5th international conference on Reachability problems
Transformational verification of parameterized protocols using array formulas
LOPSTR'05 Proceedings of the 15th international conference on Logic Based Program Synthesis and Transformation
Analysing robot swarm behaviour via probabilistic model checking
Robotics and Autonomous Systems
A java supercompiler and its application to verification of cache-coherence protocols
PSI'09 Proceedings of the 7th international Andrei Ershov Memorial conference on Perspectives of Systems Informatics
Towards the formal verification of cache coherency at the architectural level
ACM Transactions on Design Automation of Electronic Systems (TODAES) - Special section on verification challenges in the concurrent world
Attacking the dimensionality problem of parameterized systems via bounded reachability graphs
FSEN'11 Proceedings of the 4th IPM international conference on Fundamentals of Software Engineering
Improving Reachability Analysis of Infinite State Systems by Specialization
Fundamenta Informaticae - Concurrency Specification and Programming (CS&P)
The Journal of Supercomputing
FCT'07 Proceedings of the 16th international conference on Fundamentals of Computation Theory
PETRI NETS'13 Proceedings of the 34th international conference on Application and Theory of Petri Nets and Concurrency
Parameterized verification of asynchronous shared-memory systems
CAV'13 Proceedings of the 25th international conference on Computer Aided Verification
Journal of Automated Reasoning
Hi-index | 0.00 |
We propose a new method for the parameterized verification of formal specifications of cache coherence protocols. The goal of parameterized verification is to establish system properties for an arbitrary number of caches. In order to achieve this purpose we define abstractions that allow us to reduce the original parameterized verification problem to a control state reachability problem for a system with integer data variables. Specifically, the methodology we propose consists of the following steps. We first define an abstraction in which we only keep track of the number of caches in a given state during the execution of a protocol. Then, we use linear arithmetic constraints to symbolically represent infinite sets of global states of the resulting abstract protocol. For reasons of efficiency, we relax the constraint operations by interpreting constraints over real numbers. Finally, we check parameterized safety properties of abstract protocols using symbolic backward reachability, a strategy that allows us to obtain sufficient conditions for termination for an interesting class of protocols. The latter problem can be solved by using the infinite-state model checker HyTech: Henzinger, Ho, and Wong-Toi, “A model checker for hybrid systems,” Proc. of the 9th International Conference on Computer Aided Verification (CAV'97), Lecture Notes in Computer Science, Springer, Haifa, Israel, 1997, Vol. 1254, pp. 460–463. HyTech handles linear arithmetic constraints using the polyhedra library of Halbwachs and Proy, “Verification of real-time systems using linear relation analysis,” Formal Methods in System Design, Vol. 11, No. 2, pp. 157–185, 1997. By using this methodology, we have automatically validated parameterized versions of widely implemented write-invalidate and write-update cache coherence protocols like Synapse, MESI, MOESI, Berkeley, Illinois, Firefly and Dragon (Handy, The Cache Memory Book, Academic Press, 1993). With this application, we have shown that symbolic model checking tools like HyTech, originally designed for the verification of hybrid systems, can be applied successfully to new classes of infinite-state systems of practical interest.