Thread Scheduling Sequence Generation Based on All Synchronization Pair Coverage Criteria
Autor: | CunFeng Shi, Ruilian Zhao, Zheng Li, Junxia Guo |
---|---|
Rok vydání: | 2020 |
Předmět: |
Thread scheduling
Artificial Intelligence Computer Networks and Communications Computer science 020204 information systems 0202 electrical engineering electronic engineering information engineering 020207 software engineering 02 engineering and technology Parallel computing Thread (computing) Computer Graphics and Computer-Aided Design Software |
Zdroj: | International Journal of Software Engineering and Knowledge Engineering. 30:97-118 |
ISSN: | 1793-6403 0218-1940 |
Popis: | Testing multi-thread programs becomes extremely difficult because thread interleavings are uncertain, which may cause a program getting different results in each execution. Thus, Thread Scheduling Sequence (TSS) is a crucial factor in multi-thread program testing. A good TSS can obtain better testing efficiency and save the testing cost especially with the increase of thread numbers. Focusing on the above problem, in this paper, we discuss a kind of approach that can efficiently generate TSS based on the concurrent coverage criteria. First, we give a definition of Synchronization Pair (SP) as well as all Synchronization Pairs Coverage (ASPC) criterion. Then, we introduce the Synchronization Pair Thread Graph (SPTG) to describe the relationships between SPs and threads. Moreover, this paper presents a TSS generation method based on the ASPC according to SPTG. Finally, TSSs automatic generation experiments are conducted on six multi-thread programs in Java Library with the help of Java Path Finder (JPF) tool. The experimental results illustrate that our method not only generates TSSs to cover all SPs but also requires less state number, transition number as well as TSS number when satisfying ASPC, compared with other three widely used TSS generation methods. As a result, it is clear that the efficiency of TSS generation is obviously improved. |
Databáze: | OpenAIRE |
Externí odkaz: |