Runtime Refinement Checking for Concurrent Data Structures

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=r2RG7OMQokU



Duration: 53:51
68 views
0


Runtime Refinement Checking for Concurrent Data Structures (the VYRD* project: VerifYing Refinement by Runtime Detection) The goal of the VYRD Project is to develop a runtime verification framework for concurrently accessed data structures. Databases and file systems have such data structures at their core. Stringent performance requirements force the use of tricky synchronization mechanisms for coordinating access to shared data, which makes these systems prone to concurrency errors. In this talk, we present a method for verifying that a concurrent data structure implementation refines a specification with atomic operations. Complete verification of refinement for complex implementations is often impractical. Our method instead detects refinement violations that occur at runtime. We instrument the implementation to record its actions into a log in the order they happen. The verifier then uses the log to reconstruct interesting aspects of data structure state at certain points in the execution, runs the specification in parallel, and checks that refinement conditions are met. Refinement is formulated in terms of a correspondence between the specification and implementation states and/or method return values. To check a particularly simple notion of refinement, very little annotation by the programmer is required. We report results on the application of our method to a filesystem and the Boxwood project (on storage infrastructure) being developed at MSR Silicon Valley. We are investigating ways to generalize and automate our technique and to obtain more coverage from runtime checking. *: In Norse mythology, the three sisters of Vyrd weave together the threads of fate.




Other Videos By Microsoft Research


2016-09-05Evaluating Retrieval System Effectiveness
2016-09-05Exploiting the Transients of Adaptation for RoQ Attacks on Internet Resources
2016-09-05Specification-Based Annotation Inference
2016-09-05Emotion Recognition in Speech Signal: Experimental Study, Development and Applications
2016-09-05Text summarization: News and Beyond
2016-09-05Data Streaming Algorithms for Efficient and Accurate Estimation of Flow Size Distribution
2016-09-05Learning and Inferring Transportation Routines
2016-09-05Raising the Bar: Integrity and Passion in Life and Business: The Story of Clif Bar, Inc.
2016-09-05Revelationary Computing, Proactive Displays and The Experience UbiComp Project
2016-09-05The Design of A Formal Property-Specification Language
2016-09-05Runtime Refinement Checking for Concurrent Data Structures
2016-09-05Lost in Space: The Fall of NASA and the Dream of a New Space Age
2016-09-05Solving Geometric Matching Problems using Interval Arithmetic Optimization
2016-09-05How to Disembed a Program
2016-09-05Laboratory for Recognition and Organization of Speech
2016-09-05The (Mis)Behavior of Markets: A Fractal View of Risk, Ruin and Return
2016-09-05Uncovering Semantic Similarities between Query Terms
2016-09-0550/50 by 2020 -- Living Anita's vision and the importance of gender equity in technology
2016-09-05Online Auctions, Strategyproofness and Random Valuations
2016-09-05Citrine Smart Clipboard, WhyLine Interrogative Debugging, EdgeWrite Text Entry, and Pebbles PocketPC
2016-09-05Because it is there: Kili the Right Way



Tags:
microsoft research