Title :
CCmutator: A mutation generator for concurrency constructs in multithreaded C/C++ applications
Author :
Kusano, Markus ; Chao Wang
Author_Institution :
Virginia Tech, Blacksburg, VA, USA
Abstract :
We introduce CCmutator, a mutation generation tool for multithreaded C/C++ programs written using POSIX threads and the recently standardized C++11 concurrency constructs. CCmutator is capable of performing partial mutations and generating higher order mutants, which allow for more focused and complex combinations of elementary mutation operators leading to higher quality mutants. We have implemented CCmutator based on the popular Clang/LLVM compiler framework, which allows CCmutator to be extremely scalable and robust in handling real-world C/C++ applications. CCmutator is also designed in such a way that all mutants of the same order can be generated in parallel, which allows the tool to be easily parallelized on commodity multicore hardware to improve performance.
Keywords :
C++ language; multi-threading; multiprocessing programs; program compilers; program testing; software performance evaluation; CCmutator; Clang-LLVM compiler framework; POSIX threads; commodity multicore hardware; elementary mutation operators; higher order mutant generation; multithreaded C applications; multithreaded C++ applications; mutation generation tool; partial mutations; performance improvement; software development process; software testing; standardized C++11 concurrency constructs; Computer bugs; Concurrent computing; Instruction sets; Java; Software testing; Synchronization;
Conference_Titel :
Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on
Conference_Location :
Silicon Valley, CA
DOI :
10.1109/ASE.2013.6693142