Int J Performability Eng ›› 2018, Vol. 14 ›› Issue (10): 2332-2342.doi: 10.23940/ijpe.18.10.p9.23322342

• Original articles • Previous Articles     Next Articles

A Concurrent Harmful Races Identification Algorithm using Hadoop and Multiple Cloud Servers

Suxia Zhua, b, Yanan Wua, b, Guanglu Suna, b, and Jianda Suna   

  1. aSchool of Computer Science and Technology, Harbin University of Science and Technology, Harbin, 150080, China
    bResearch Center of Information Security and Intelligent Technology, Harbin University of Science and Technology, Harbin, 150080, China

Abstract:

Data race is widespread in multi-thread programs and can lead to serious failures. To improve the reliability of programs, many race detectors have been proposed. However, most of the detectors use binary instrumentation to detect potential races, imposing higher runtime overhead. Most of the potential races are false positive, which consumes manual effort to identify the harmful races. In order to reduce runtime overhead of identifying harmful races, we propose two concurrent strategies that reduce runtime overhead from the detection potential races stage and the verification harmful races stage. Unlike previous work, the detection and verification races are in one execution. In this paper, the Hadoop distributed system is used to detect the potential races concurrently from the trace, and then the weighted Round-Robin algorithm is used to divide all potential races to multiple cloud servers. Harmful races are verified concurrently in multiple cloud servers by controlling thread scheduling. The experimental results show that our method for identifying harmful races is more efficient. Compared with RaceFuzzer and ReceChecker, the runtime overhead is reduced by an average of 72% and 46% respectively. In addition, a good speedup is achieved in this paper.
Submitted on July 9, 2018; Revised on August 8, 2018; Accepted on September 15, 2018
References: 22