Adaptive granularity refinement in detecting potential data races
AssigneeMicrosoft Corporation
InventorsThomas Rodeheffer, Yuan Yu
Life of this patent
Estimating the term…
Abstract
A method and apparatus are provided for detecting data races that overcome the limitations of the prior art. In some embodiments, this is accomplished by detecting a first access to an object, determining whether the first access is associated with a suspicious pattern, automatically refining a pattern detection granularity from the object to a memory location within the object if a determination is made that the first access is associated with the suspicious pattern, and reporting the data race if a second access associated with the suspicious pattern occurs at the memory location after the pattern detection granularity is refined.
Claims20
A method for detecting a data race, comprising:
- detecting a first access to an object;
- determining whether the first access is associated with a suspicious pattern;
- and
- refining a pattern detection granularity from the object to a memory location within the object if it is determined that the first access is associated with the suspicious pattern.
A system for detecting a data race, comprising:
- a memory configured to store an object and a memory location within the object;
- and logic configured to detect a first access to the object, determine whether the first access is associated with a suspicious pattern, and refine a pattern detection granularity from the object to a memory location within the object if a determination is made that the first access is associated with the suspicious pattern.
A computer-readable medium with computer-executable instructions stored thereon for:
- detecting a first access to an object;
- determining whether the first access is associated with a suspicious pattern;
- and refining a pattern detection granularity from the object to a memory location within the object if a determination is made that the first access is associated with the suspicious pattern.
Dependencies are inferred from the claim text.