Worst-case execution time analysis of multi-threaded software is still a challenge. This comes mainly from the fact that the number of thread interleavings grows exponentially in the number of threads and that synchronization has to be taken into account. In particular, a suitable graph based model has been missing. The idea that thread interleavings can be studied with a matrix calculus is a novel approach in this research area. Our sparse matrix representations of the program are manipulated using Kronecker algebra. The resulting graph represents the multi-threaded program and plays a similar role for concurrent systems as control flow graphs do for sequential programs. Thus a suitable graph model for timing analysis of multi-threaded software has been set up. Due to synchronization it turns out that often only very small parts of the resulting graph are actually needed, whereas the rest is unreachable. A lazy implementation of the matrix operations ensures that the unreachable parts are never calculated. This speeds up processing significantly and shows that our approach is very promising.
@InProceedings{mittermayr_et_al:OASIcs.WCET.2012.59, author = {Mittermayr, Robert and Blieberger, Johann}, title = {{Timing Analysis of Concurrent Programs}}, booktitle = {12th International Workshop on Worst-Case Execution Time Analysis}, pages = {59--68}, series = {Open Access Series in Informatics (OASIcs)}, ISBN = {978-3-939897-41-5}, ISSN = {2190-6807}, year = {2012}, volume = {23}, editor = {Vardanega, Tullio}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.WCET.2012.59}, URN = {urn:nbn:de:0030-drops-35570}, doi = {10.4230/OASIcs.WCET.2012.59}, annote = {Keywords: Worst-case execution time analysis (WCET), Concurrency, Thread Synchronization, Kronecker Algebra, Program Analysis} }
Feedback for Dagstuhl Publishing