Font Size: a A A

Research Of Data Race Detection Method Based On Context-sensitive Analysis

Posted on:2021-08-01Degree:MasterType:Thesis
Country:ChinaCandidate:H LiuFull Text:PDF
GTID:2518306461470474Subject:Computer technology
Abstract/Summary:PDF Full Text Request
With the prevalence of multi-core processors,multi-threaded programs have become more and more widespread.Concurrent programs could effective take the of the performance advantages of multi-core processors,and it could also improve the programming efficiency.However,there have concurrency and uncertainty in concurrent programs which cause some inevitable flaws.It is important to detect and repair concurrency problems because severe concurrency problems may cause the program to crash.It is urged to solve the data race problems due to data race occupies a large proportion of these concurrency problems.Data race is one of the most common concurrency defects.Many false positives and false negatives are reported by some existing tools during data race detection.To improve the correctness of data race detection,an approach to detect the data races based on the context-sensitive analysis in multi-threaded programs is proposed.Firstly,control flow analysis is used to construct context-sensitive call graphs,and variable operations are collected by the sensitive call graph.Escape analysis are employed to find thread-escaped objects that may have data races,and excluded local variables that do not have data race to reduce the detection overhead.Secondly,context-sensitive alias analysis is conducted to detect alias variables and alias locks so as to reduce false positives and false negatives.Finally,the happens-before analysis is performed to remove false positives caused by ignoring thread interactions.A data race detection tool ConRacer is implemented by the WALA framework based on this approach,and verifies the effectiveness of ConRacer through comparative experiments.ConRacer is a plug-in that automatically detects data race based on the Eclipse platform.Some benchmarks are selected to test it in order to verify the effectiveness of ConRacer.In the experiment,ten benchmarks including Pingpong,Moldyn,Montecarlo and Lusearch are selected to evaluate ConRacer.We also compare ConRacer with the existing detection tools such as SRD,RVPredict and Said.The results show that ConRacer can effectively detect data races,it also can effectively reduce the false positives and false negatives of data race detection.
Keywords/Search Tags:Concurrent programs, Data race, Context sensitive, Escape analysis, Control flow analysis, Alias analysis
PDF Full Text Request
Related items