Abstracts

Using the jump number problem to efficiently detect global predicates in distributed systems

by Trokon Edward Clinton




Institution: University of Texas Austin
Department:
Year: 2017
Keywords: Global predicate detection; Distributed debugging; Verification; Global states; Jump number
Posted: 02/01/2018
Record ID: 2152860
Full text PDF: http://hdl.handle.net/2152/60467


Abstract

Detecting global predicates of a distributed computation is a key problem in testing and debugging distributed programs. It consists of searching the global state space of events to determine whether a given predicate could have occurred. For example a programmer may be interested in verifying whether a parallel program violates a global invariant, or detect a race condition between concurrent threads. This is a challenging problem because the number of consistent global states can grow exponentially when the number of events in the computation increases. This paper presents techniques that tackle the state explosion problem and help detect whether an arbitrary predicate is true in polynomial time. We first present a brute force algorithm, and then improve the performance with an exact and heuristic algorithm inspired by the jump number problem.Advisors/Committee Members: Garg, Vijay K. (Vijay Kumar), 1963- (advisor).