# title
Detecting, Exposing, and Classifying Sequential Consistency Violations

# abstract
2016 IEEE. Sequential Consistency (SC) is the most intuitivememory model for parallel programs. However, modern architectures aggressively reorder and overlap memory accesses, causing SC violations. An SC violation is virtually always abug. Most prior schemes either search the entire state spaceof a program, or use a constraint solver to find SC violations. A promising recent scheme uses active testing technique butfails to be effective for SC violations involving larger numberof threads and variables, and larger codebases. We proposeOrion, the first active testing technique that can detect, expose, and classify any arbitrary SC violations in any program. Orionworks in two phases. In the first phase, it finds potentialSC violation cycles by focusing on racing accesses. In thesecond phase, it exposes each SC violation cycle by enforcingthe exact scheduling order. We present a detailed design ofOrion in the paper. We tested different concurrent algorithms, bug kernels, SPLASH2, PARSEC applications, and an opensource program, Apache. We experimented with TSO and PSOmemory models. We detected and exposed 60 SC violationsof which 15 violations involve more than two processorsand variables. Orion exposes SC violations quickly and withhigh probability. Compared to a state-of-the-art active testingtechnique, it has a much better SC violation detection ability.

# publicationVenue.label
Proceedings - International Symposium on Software Reliability Engineering, ISSRE

# publicationOutlet
2016 IEEE 27th International Symposium on Software Reliability Engineering (ISSRE)

# nameOfConference
2016 IEEE 27th International Symposium on Software Reliability Engineering (ISSRE)

# publisher.label
Institute of Electrical and Electronics Engineers (IEEE)

# keywords[]
16 Peace, Justice And Strong Institutions

# tags[]
16 Peace, Justice and Strong Institutions