Before Recitation

Before reading the paper, refresh your memory on what race conditions are and the troubles that they can cause by revisiting sections 5.2.2, 5.2.3, and 5.2.4 of the textbook.

Then, read Hybrid Dynamic Data Race Detection by O'Callahan and Choi. Skim Sections 5, 6, and 8 (i.e., you don't need to read them as thoroughly as the other sections).

To help you as you read:

  • Section 1 introduces two different approaches to race detection: lockset-based and happens-before. After the end of this section, you should have some idea of how they differ.
  • After Section 2, you should understand the ideas behind lockset-based algorithms.
  • After Section 3, you should understand the ideas behind happens-before algorithms (which means that you can revisit Figure 1).
  • Section 4 is quite brief, and describes how the authors have combined the two approaches to race detection.
  • Section 5 (which you only need to skim) explains some optimizations that make hybrid race detection more practical. Section 6 (which you also only need to skim) details their implementation. Notice that Section 6 defines "Simple Mode", which will be important in Section 7.
  • Section 7 gives the author's evaluation of their hybrid race detector.

Question for Recitation: Before you come to this recitation, you'll turn in a brief answer to the following questions (really—we don't need more than a sentence or so for each question). Your TA will be in touch about exactly how to turn that in. Your answers to these questions should be in your own words, not direct quotations from the paper.

  • What are the goals of the hybrid race detector?
  • How was it designed to meet those goals?
  • Why do we need hybrid race detection? (Or why do the authors believe that we need it?)
  • Who should use use race detectors (should you?)? In what situations?
As always, there are multiple correct answers for each of these questions.

During Recitation

We expect you to be engaged and participate in recitation, and there are many ways to do that! Check out our participation FAQ for more information.

After Recitation

Outline for this recitation.