Run-Time Management for Future Mpsoc Platforms
Total Page:16
File Type:pdf, Size:1020Kb
Run-time management for future MPSoC platforms Citation for published version (APA): Nollet, V. (2008). Run-time management for future MPSoC platforms. Technische Universiteit Eindhoven. https://doi.org/10.6100/IR633897 DOI: 10.6100/IR633897 Document status and date: Published: 01/01/2008 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: 30. Sep. 2021 Run-Time management for future MPSoC platforms PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Technische Universiteit Eindhoven, op gezag van de Rector Magnificus, prof.dr.ir. C.J. van Duijn, voor een commissie aangewezen door het College voor Promoties in het openbaar te verdedigen op woensdag 23 april 2008 om 16.00 uur door Vincent Nollet geboren te Veurne, Belgie¨ Dit proefschrift is goedgekeurd door de promotor: prof.dr. H. Corporaal Copromotor: dr.ir. D.T.M.L. Verkest This work was carried out at IMEC. c Copyright 2008 Vincent Nollet All rights reserved. No part of this publication 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. Cover design: Carmen Six and Vincent Nollet, cliparts from www.openclipart.org. Printed by: Procopia N.V. CIP-DATA LIBRARY TECHNISCHE UNIVERSITEIT EINDHOVEN Nollet, Vincent Run-time management for future MPSoC platforms / by Vincent Nollet. - Eindhoven : Technische Universiteit Eindhoven, 2008. Proefschrift. - ISBN 978-90-386-1804-3 NUR 959 Trefw.: operating systems / multiprocessoren / computerprestaties / ingebedde systemen. Subject headings: operating systems, computers / multiprocessing systems / resource allocation / embedded systems. Acknowledgments he destination has been reached. But a wise man once said:”Live for the journey, not the destination”. So, when looking back, I must say it has been a very inter- Testing journey. Filled with a balance of joy and frustration, hope and despair, laughter and sadness. All these emotions have been shared with the people that I lived and worked with during this journey. I would like to express my gratitude to all of them. Particularly, I would like to thank: Henk Corporaal, my promotor, for the many discussions, motivational talks and nu- merous hours spent over the years. His wife Carola for stimulating productivity on the saturday PhD meetings with envigorating coffee and cookies. Diederik Verkest, my co-promotor, for his practical guidance and for having an open door for all kinds of problems. The PhD committee: Henk Corporaal, Diederik Verkest, Jef van Meerbergen, Francky Catthoor, Dirk Stroobandt and Johan Lukkien for investing time and energy into reading and commenting the text. Theodore Marescaux and Prabhat Avasare for being my brothers in arms and partners in crime. Erik Brockmeyer for being an always-available, idea-sparring partner and for sharing his views on design-time application mapping. I learned a lot. Wilfried Verachtert for providing me some space for writing this text. Kristof Denolf and Martin Palkovicˇ for helping me navigate through the PhD administration jungle and Tom Ashby for giving a motivated answer to all my English grammar questions. The Gecko team: Theodore Marescaux, Jean-Yves Mignolet, Prabhat Avasare, Paul Coene, Andrei Bartic, Will Moffat, Nam Pham Ngoc, Diederik Verkest and Serge Vernalde. The MPSoC team: Theodore Marescaux, Erik Brockmeyer, Arnout Vandecappelle, Sven Wuytack, Eddy Degreef, Bart Durinck, Tanja Van Achteren, Rogier Baert, Mar- tin Palkovic,ˇ Geert Vanmeerbeeck, Prabhat Avasare, Chantal Ykman-Couvreur, Ste- lios Mamagkakis, Tom Ashby, Zhe Ma and Maryse Wouters The master thesis students who contributed to this work: Stefan Cosemans, Johan Leys, Jelle Welvaarts and Steven Wittens. ii Acknowledgments My family, more in particular my mother, my sister and my godmother who sup- ported me although they often wondered why I was doing this. My parents-in-law, for boldy moving forward with the home renovations during the final PhD phase. Finally, we get to the most valuable persons. My wife Carmen, who endured all the cursing, blood, sweat and tears, late evenings and early mornings, week-ends and vacations that were consumed in producing this thesis. I would not have reached this point without her loving support. I thank her with all my heart. While finalizing this thesis, my newborn son Jolan allowed me to put things in perspective: an un- conditional smile - even when things don't go as good or as fast as planned - always brightens up the day. –Vincent Run-Time Management for Future MPSoC Platforms Summary n recent years, we are witnessing the dawning of the Multi-Processor System- on-Chip (MPSoC) era. In essence, this era is triggered by the need to handle Imore complex applications, while reducing overall cost of embedded (handheld) devices. This cost will mainly be determined by the cost of the hardware platform and the cost of designing applications for that platform. The cost of a hardware platform will partly depend on its production volume. In turn, this means that flexible, (easily) programmable multi-purpose platforms will exhibit a lower cost. A multi-purpose platform not only requires flexibility, but should also combine a high performance with a low power consumption. To this end, MPSoC devices integrate computer architectural properties of various comput- ing domains. Just like large-scale parallel and distributed systems, they contain mul- tiple heterogeneous processing elements interconnected by a scalable, network-like structure. This helps in achieving scalable high performance. As in most mobile or portable embedded systems, there is a need for low-power operation and real-time behavior. The cost of designing applications is equally important. Indeed, the actual value of future MPSoC devices is not contained within the embedded multiprocessor IC, but in their capability to provide the user of the device with an amount of services or experiences. So from an application viewpoint, MPSoCs are designed to efficiently process multimedia content in applications like video players, video conferencing, 3D gaming, augmented reality, etc. Such applications typically require a lot of pro- cessing power and a significant amount of memory. To keep up with ever evolving user needs and with new application standards appearing at a fast pace, MPSoC platforms need to be be easily programmable. Application scalability, i.e. the ability to use just enough platform resources according to the user requirements and with respect to the device capabilities is also an important factor. iv Summary Hence scalability, flexibility, real-time behavior, a high performance, a low power consumption and, finally, programmability are key components in realizing the suc- cess of MPSoC platforms. The run-time manager is logically located between the application layer en the plat- form layer. It has a crucial role in realizing these MPSoC requirements. As it abstracts the platform hardware, it improves platform programmability. By deciding on re- source assignment at run-time and based on the performance requirements of the user, the needs of the application and the capabilities of the platform, it contributes to flexibility, scalability and to low power operation. As it has an arbiter function between different applications, it enables real-time behavior. This thesis details the key components of such an MPSoC run-time manager and provides a proof-of-concept implementation. These key components include ap- plication quality management algorithms linked to MPSoC resource management mechanisms and policies, adapted to the provided MPSoC platform services. First, we describe the role, the responsibilities and the boundary conditions of an MPSoC run-time manager in a generic way. This includes a definition of the mul-