Rigorous concurrency analysis of multithreaded programs

Publication Type technical report
School or College College of Engineering
Department Kahlert School of Computing
Program Advanced Research Projects Agency
Creator Yang, Yue; Gopalakrishnan, Ganesh; Lindstrom, Gary E.
Title Rigorous concurrency analysis of multithreaded programs
Date 2003
Description This paper explores the practicality of conducting program analysis for multithreaded software using constraint solv- ing. By precisely defining the underlying memory consis- tency rules in addition to the intra-thread program seman- tics, our approach orders a unique advantage for program ver- ification | it provides an accurate and exhaustive coverage of all thread interleavings for any given memory model. We demonstrate how this can be achieved by formalizing sequen- tial consistency for a source language that supports control branches and a monitor-style mutual exclusion mechanism. We then discuss how to formulate programmer expectations as constraints and propose three concrete applications of this approach: execution validation, race detection, and atom- icity analysis. Finally, we describe the implementation of a formal analysis tool using constraint logic programming, with promising initial results for reasoning about small but non-trivial concurrent programs.
Type Text
Publisher University of Utah
Subject Concurrency analysis; Multithreaded programs
Subject LCSH Simultaneous multithreading processors
Language eng
Bibliographic Citation Yang, Yue; Gopalakrishnan, Ganesh; Lindstrom, Gary E. (2003). Rigorous concurrency analysis of multithreaded programs. UUCS-03-026.
Series University of Utah Computer Science Technical Report
Relation is Part of ARPANET
Rights Management ©University of Utah
Format Medium application/pdf
Format Extent 207,328 bytes
Source University of Utah School of Computing
ARK ark:/87278/s6p565pr
Setname ir_uspace
ID 703302
Reference URL https://collections.lib.utah.edu/ark:/87278/s6p565pr