Abstract:The popularity of multiple-core devices has made parallel programming a necessity to harness the abundant hardware resources. However, due to the non-determinism of parallel software, writing robust parallel software is notoriously hard. Therefore, how to debug concurrency bugs efficiently has become an issue that needs to be urgently deal with. In this paper, we have surveyed the parallel debugging technologies systematically. Further, based on the survey, we have made classifications and comparisons. At last, we have presented the prospects of the possible development direction of concurrency bug debugging approaches.