Download presentation
Presentation is loading. Please wait.
Published byAlice Osborne Modified over 9 years ago
1
Parallelizing Functional Tests for Computer Systems Using Distributed Graph Exploration Alexey Demakov, Alexander Kamkin, and Alexander Sortov {demakov,kamkin,sortov}@ispras.ru Institute for System Programming of the Russian Academy of Sciences http://hardware.ispras.ru
2
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 2 of 16 Model-Based Testing Requirements System Under Test Model Are conformant? Reactions Stimuli Test System Test generation Correctness checking Test quality estimation
3
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 3 of 16 Graph Exploration for Testing Test Scenario Model Model State Stimuli Exploration Model Graph System Under Test ReactionsStimuli
4
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 4 of 16 Model Graph Size The problem: size of a model graph 10 5 nodes and 10 6 arcs Possible solution: factorization But a model graph is still huge!
5
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 5 of 16 Distributed Graph Exploration
6
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 6 of 16 Test System Architecture
7
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 7 of 16 Model Graph Storage Model Graph Storage manages information about a known part of a model graph
8
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 8 of 16 Traverser Traverser fills up the storage when exploring a model graph
9
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 9 of 16 Main Test Loop Main Test Loop applies test actions and analyses SUT’s reactions
10
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 10 of 16 Synchronizer Synchronizer is responsible for information exchange
11
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 11 of 16 Communication Topologies Ring Torus
12
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 12 of 16 User Interface
13
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 13 of 16 Case Study 3 industrial projects on hardware verification >10 tests with model graphs of 10 5 -10 6 nodes Experimental results: model graph: 84 561 nodes and 338 244 arcs Number of computers TopologyExecution time, min Parallelization efficiency 1─803,31 81Ring12.20.81 81Torus 9x911.40.87 100Ring10.20.79 100Torus 10x109.50.85
14
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 14 of 16 Conclusion Distributed graph exploration significantly speeds up testing (communication overhead < 20%) The described approach has been implemented in the UniTESK testing tools Current implementation is able to handle model graphs with 10 6 nodes and 10 7 arcs
15
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 15 of 16 Future Work Dynamic reconfiguration of communication topology (adding and removing computers and links) Support of multi-core/processors computers with shared memory (sharing model graph storage) Memory optimization of a model graph representation Splitting a model graph into several weakly connected sub-graphs (in the current implementation computer should have enough memory to store a whole model graph)
16
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 16 of 16 Thank You!
17
5 th Open Cirrus Summit, Moscow, June 01-03, 2011 17 The synchronization protocol Synchronizer receives all incoming network messages and asks Traverser for local update R (received) - a set of arcs in the received messages S (sent) - a set of arcs that have been already sent via the outgoing connections of the process N (new) - a local update A set of new arcs received from other processes R \ (S N) is added to Model Graph Storage. A message containing a set of arcs (R N) \ S is sent via all outgoing connections. A set of sent arcs is updated: S := S R N.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.