Producing scheduling that causes concurrent programs to fail

Yosi Ben-Asher, Yaniv Eytani, Eitan Farchi, Shmuel Ur

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

A noise maker is a tool that seeds a concurrent program with conditional synchronization primitives (such as yield) for the purpose of increasing the likelihood that a bug manifest itself. This work explores the theory and practice of choosing where in the program to induce such thread switches at runtime. We introduce a novel fault model that classifies locations as "good", "neutral", or "bad," based on the effect of a thread switch at the location. We validate our approach by experimenting with a set of programs taken from publicly available multi-threaded benchmark. Our empirical evidence demonstrates that real-life behavior is similar to that derived from the model.

Original languageEnglish
Title of host publicationProceeding of the 2006 Workshop on Parallel and Distributed Systems
Subtitle of host publicationTesting and Debugging, PADTAD '06
Pages37-39
Number of pages3
DOIs
StatePublished - 2006
Event2006 Workshop on Parallel and Distributed Systems: Testing and Debugging, PADTAD '06 - Portland, ME, United States
Duration: 17 Jul 200617 Jul 2006

Publication series

NameProceeding of the 2006 Workshop on Parallel and Distributed Systems: Testing and Debugging, PADTAD '06
Volume2006

Conference

Conference2006 Workshop on Parallel and Distributed Systems: Testing and Debugging, PADTAD '06
Country/TerritoryUnited States
CityPortland, ME
Period17/07/0617/07/06

Keywords

  • Experimentation
  • Reliability
  • Verification

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Producing scheduling that causes concurrent programs to fail'. Together they form a unique fingerprint.

Cite this