Automated Design Space Exploration for Component-Based Real-Time Distributed Systems
Total Page:16
File Type:pdf, Size:1020Kb
Automated design space exploration for component-based real-time distributed systems Citation for published version (APA): Triantafyllidis, K. (2017). Automated design space exploration for component-based real-time distributed systems. Technische Universiteit Eindhoven. Document status and date: Published: 18/04/2017 Document Version: Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers) Please check the document version of this publication: • A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website. • The final author version and the galley proof are versions of the publication after peer review. • The final published version features the final layout of the paper including the volume, issue and page numbers. Link to publication General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal. If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement: www.tue.nl/taverne Take down policy If you believe that this document breaches copyright please contact us at: [email protected] providing details and we will investigate your claim. Download date: 11. Oct. 2021 Automated Design Space Exploration for Component-Based Real-Time Distributed Systems PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Technische Universiteit Eindhoven, op gezag van de rector magnificus prof.dr.ir. F.P.T. Baaijens, voor een commissie aangewezen door het College voor Promoties, in het openbaar te verdedigen op dinsdag 18 april 2017 om 16.00 uur door Konstantinos Triantafyllidis geboren te Karditsa, Griekenland Dit proefschrift is goedgekeurd door de promotoren en de samenstelling van de promotiecommissie is als volgt: voorzitter: prof.dr.ir. J.H. Blom 1e promotor: prof.dr.ir. P.H.N. de With copromotor(en): dr. Y. Bondarau leden: dr. L. Almeida (University of Porto, Portugal) dr. J.L. Medina (University of Cantabria, Spain) prof.dr. K.G.W. Goossens dr.ir. R.J. Bril Het onderzoek of ontwerp dat in dit proefschrift wordt beschreven is uitgevoerd in overeenstemming met de TU/e Gedragscode Wetenschapsbeoefening. To my parents Gianni and Vagelitsa. CIP-DATA LIBRARY TECHNISCHE UNIVERSITEIT EINDHOVEN Triantafyllidis, Konstantinos. Design Space Exploration for Comonent-Based Real-Time Distributed Systems by Konstantinos Triantafyllidis - Eindhoven : Technische Universiteit Eindhoven, 2017. Proefschrift. - ISBN 978-94-629-5596-7 NUR 959 Trefw.: prestatievoorspelling / real-time systemen / architectuurontwerp / componentgebasseerde architecturen. Subject headings: performance prediction / real-time systems / design space exploration / component-based architecture. c Copyright 2017 Konstantinos Triantafyllidis All rights are reserved. No part of this book may be reproduced, stored in a re- trieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission from the copyright owner. Summary Automated Design Space Exploration for Component-Based Real-Time Distributed Systems In recent years, component-based development has become a common prac- tice, enabling rapid system prototyping and system composition from existing SW and HW blocks. At the early component-composition phases, an architect needs accurate assessment methods to evaluate the performance of the system. There- fore, the component models should be reasonably detailed, while maintaining a high abstraction level, so that they can be easily incorporated and combined for the composition of a virtual prototype. Moreover, the performance analysis of such pro- totype systems may result in pessimistic worst-case response time predictions, or even worse, cannot guarantee reachability of actual worst-case response times. On top of this, the incorporation of multi-node architectures requires analysis methods that consider high-accuracy predictions of the involved networked communication. The complexity of such multi-node systems makes accurate performance prediction a challenging task. Additionally, due the large number of different architecture al- ternatives (numerous factors of freedom in system architecture), the design space exploration (DSE) of such systems should enable both fast generation and rapid evaluation, in preferably automated way, of those architecture alternatives. In this thesis, we propose the ProMARTES DSE framework, which enables rapid and highly accurate DSE of component-based real-time distributed systems (CB- RTDS). ProMARTES incorporates four individual phases: (a) profiling and resource modeling, (b) architecture composition, (c) performance analysis, and (d) system evaluation and architecture optimization. After presenting this framework, the Pro- MARTES DSE is evaluated by various experiments. For profiling, the framework enables cycle-accurate measurements and auto- mated generation of component resource models by using the ProMo tool devel- oped for this purpose. The generated resource models are then placed into a repos- itory alongside with the behavior models of the SW. Also, the HW component modules are added. For architecture composition, constitution of the system is per- formed in a semi-automated manner, where an architect specifies in an intuitive way the functional and non-functional system requirements. The automated part con- sists of realizing the composition of the HW platform and the SW/HW mapping, using state-of-the-art optimization heuristics. With respect to performance analy- i sis, the composed system model is applied to a hybrid performance analysis method, which provides identification of worst-case response times in a deterministic pro- cedure, while average-case response times and detailed behavior time-line data are obtained via simulation. The hybrid method supports both computation and com- munication resources. Regarding the final system evaluation with ProMARTES DSE, the architecture composition of a system and its performance analysis are exe- cuted in a fast, automated and iterative manner, until the optimal or a set of optimal system architecture(s) is identified. This automated iterative process is guided by newly modified state-of-the-art optimization heuristics. The ProMARTES framework is validated on three challenging real-world case studies, which involve autonomously navigating robot systems with multiple pro- cessing nodes, various HW and SW components, real-time scheduling policies and communication protocols. The first case study contributes in the evaluation of the processing performance analysis framework, by comparing predicted and actual performance of an autonomous navigating robot-system. The second case study covers three autonomously navigating robots with high processing resource de- mands. The communication between the robots and the processing resources is performed wirelessly, thereby explicitly evaluating robustness and multi-node net- working aspects in the ProMARTES performance analysis framework. The third and last case study concentrates on the automated optimization, comparing and se- lecting the best performing system architecture for the second case study. The first novel element is the guided optimization process to the optimal architecture by as- signing weights to fundamental architecture dimensions. The second innovation is the generation of architecture alternatives by imposing rules derived from patterns in real-time distributed system design. This innovation is significantly improving the convergence speed for finding the best architecture in a short time. The ProMARTES DSE framework offers a number of contributions and further considerations. The cycle-accurate resource models generated at profiling, act as a valid and accurate source in the succeeding performance analysis phase, while being widely applicable to many CPU-based architectures. Moreover, the direct usage of MARTE-compatible resource models in the system composition and per- formance analysis phases is ensured without any manual intervention. However, their generation requires the physical presence of a HW platform for preliminary profiling in isolated execution. The semi-automated embedding of functional and non-functional requirements via execution scenarios facilitates automated SW/HW mapping and rapid system prototyping, while also reducing the manual composi- tion effort by the architect. The case studies and the associated experiments have shown that the Pro- MARTES performance prediction method yields typically only a 6% deviation from the physically implemented system prototype. The schedulability analysis has shown larger deviation, because it is