Publication detail

AtomRace: data race and atomicity violation detector and healer

LETKO, Z. VOJNAR, T. KŘENA, B.

Original Title

AtomRace: data race and atomicity violation detector and healer

English Title

AtomRace: data race and atomicity violation detector and healer

Type

conference paper

Language

en

Original Abstract

The paper proposes a novel algorithm called AtomRace for a  dynamic detection of data races. Data races are detected as a special case of atomicity violations on atomic sections specially defined to span just particular read/write instructions and the transfer of control to and from them. A key ingredient allowing AtomRace to efficiently detect races on such short atomic sections is a use of techniques for a careful injection of noise into the scheduling of the monitored programs. The approach is very simple, fully automated, avoids false alarms, and allows for a lower overhead and better scalability than many other existing dynamic data race detection algorithms. We illustrate these facts by a set of experiments with a prototype implementation of AtomRace. Further, AtomRace can also be  applied to detect atomicity violations on more general atomic sections than those used for the data race detection. They can be defined by the user or obtained by some static analysis.

English abstract

The paper proposes a novel algorithm called AtomRace for a  dynamic detection of data races. Data races are detected as a special case of atomicity violations on atomic sections specially defined to span just particular read/write instructions and the transfer of control to and from them. A key ingredient allowing AtomRace to efficiently detect races on such short atomic sections is a use of techniques for a careful injection of noise into the scheduling of the monitored programs. The approach is very simple, fully automated, avoids false alarms, and allows for a lower overhead and better scalability than many other existing dynamic data race detection algorithms. We illustrate these facts by a set of experiments with a prototype implementation of AtomRace. Further, AtomRace can also be  applied to detect atomicity violations on more general atomic sections than those used for the data race detection. They can be defined by the user or obtained by some static analysis.

Keywords

detection, healing, atomicity violation, data race, Java

RIV year

2008

Released

14.07.2008

Publisher

Association for Computing Machinery

Location

Seattle

ISBN

978-1-60558-052-4

Book

PADTAD '08

Edition

Proceedings of the 6th workshop on Parallel and distributed systems

Edition number

NEUVEDEN

Pages from

1

Pages to

10

Pages count

10

URL

Documents

BibTex


@inproceedings{BUT30496,
  author="Zdeněk {Letko} and Tomáš {Vojnar} and Bohuslav {Křena}",
  title="AtomRace: data race and atomicity violation detector and healer",
  annote="The paper proposes a novel algorithm called AtomRace for a 
dynamic detection of data races. Data races are detected as a special case of
atomicity violations on atomic sections specially defined to span just particular
read/write instructions and the transfer of control to and from them. A key
ingredient allowing AtomRace to efficiently detect races on such short atomic
sections is a use of techniques for a careful injection of noise into the
scheduling of the monitored programs. The approach is very simple, fully
automated, avoids false alarms, and allows for a lower overhead and better
scalability than many other existing dynamic data race detection algorithms. We
illustrate these facts by a set of experiments with a prototype implementation of
AtomRace. Further, AtomRace can also be  applied to detect atomicity violations
on more general atomic sections than those used for the data race detection. They
can be defined by the user or 
obtained by some static analysis.",
  address="Association for Computing Machinery",
  booktitle="PADTAD '08",
  chapter="30496",
  edition="Proceedings of the 6th workshop on Parallel and distributed systems",
  howpublished="print",
  institution="Association for Computing Machinery",
  year="2008",
  month="july",
  pages="1--10",
  publisher="Association for Computing Machinery",
  type="conference paper"
}