Show simple item record

dc.contributor.advisorEl Fakih, Khaled
dc.contributor.advisorBarlas, Gerassimos
dc.contributor.authorBadawi, Emad Mohammad
dc.date.accessioned2017-06-11T07:40:01Z
dc.date.available2017-06-11T07:40:01Z
dc.date.issued2017-05
dc.identifier.other35.232-2017.16
dc.identifier.urihttp://hdl.handle.net/11073/8866
dc.descriptionA Master of Science thesis in Computer Engineering by Emad Mohammad Badawi entitled, "Parallel Implementations for Eliminating Finite State Machine Mutants," submitted in May 2017. Thesis advisor is Dr. Khaled El-Fakih and thesis co-advisor Dr. Gerassimos Barlas. Soft and hard copy available.en_US
dc.description.abstractIn this thesis, the mutants’ elimination problem considered in finite state machine (FSM) based mutation testing, fault diagnosis, and in the assessment of the effectiveness of test suites is targeted. Given a test suite of some test cases usually derived from a specification FSM and a set of mutants (or fault domain), derived from the specification with respect to some assumed types of faults, mutants’ elimination deals with deleting/killing each mutant of the fault domain that has an output behavior different than that of the specification FSM in respect to some test case of the test suite. However, this process is time consuming, especially when the number of considered mutants is huge. Accordingly, three parallel implementations for the considered problem based on the Open Multi-Processing (OpenMP), Message Passing interface (MPI) and the Compute Unified Device Architecture (CUDA) parallel technologies are presented. Comprehensive experiments are conducted to assess the speedup and execution time of the proposed implementations. On average, over all conducted experiments with both randomly generated and real application FSMs, the speedup of OpenMp, MPI, and GPU against sequential implementation equals 6.4, 22.9, and 569.7 times, respectively. The relative speedup of MPI and CUDA with respect to OpenMp equals 3.5 and 121.5 times, respectively; and the relative speedup of CUDA with respect to MPI equals 96.12 times. In addition, the results obtained using real machines are compared with random machines with the same attributes. CUDA implementation is shown to be scalable in terms of considered number of mutants and FSM size. For instance, limited by the used hardware architecture, CUDA easily handled experiments with 500 Million mutants and operated on machines with 9.5 Million transitions. Experiments are also conducted to determine the experimental setup attributes such as test suite length, number of test cases, and attributes related to the parallel implementations such as threads number in OpenMP, processes number in MPI and number of inputs of a test case that will be applied to the mutants in each GPU invocation.en_US
dc.description.sponsorshipCollege of Engineeringen_US
dc.description.sponsorshipDepartment of Computer Science and Engineeringen_US
dc.language.isoen_USen_US
dc.relation.ispartofseriesMaster of Science in Computer Engineering (MSCoE)en_US
dc.subjectModel Based Testingen_US
dc.subjectMutation Testingen_US
dc.subjectParallel Testingen_US
dc.subjectMPIen_US
dc.subjectMessage Passing interface (MPI)en_US
dc.subjectOpenMPen_US
dc.subjectOpen Multi-Processing (OpenMP)en_US
dc.subjectCUDAen_US
dc.subjectCompute Unified Device Architecture (CUDA)en_US
dc.subjectGPUen_US
dc.subjectGraphical Processing Unit (GPU)en_US
dc.subject.lcshMutation testing of computer programsen_US
dc.subject.lcshSequential machine theoryen_US
dc.titleParallel Implementations for Eliminating Finite State Machine Mutantsen_US
dc.typeThesisen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record