Resource Optimization in Multi-processor Real-time Systems

Abstract: This thesis addresses the topic of resource efficiency in multiprocessor systems in the presence of timing constraints.  Nowadays, almost wherever you look, you find a computing system. Most computing systems employ a multiprocessor platform. Multiprocessor systems can be found in a broad spectrum of computing systems ranging from a tiny chip hosting multiple cores to large geographically-distributed cloud data centers connected by the Internet. In multiprocessor systems, efficient use of computing resources is a substantial element when it comes to achieving a desirable performance for running software applications.  Most industrial applications, e.g., automotive and avionics applications, are subject to a set of real-time constraints that must be met. Such kinds of applications, along with the underlying hardware and software components running the application, constitute a real-time system. In real-time systems, the first and major concern of the system designer is to provide a solution where all timing constraints are met. Therefore, in multiprocessor real-time systems, not only resource efficiency, but also meeting all the timing requirements, is a major concern.  Industrie 4.0 is the current trend in automation and manufacturing when it comes to creating next generation of smart factories. Two categories of multiprocessor systems play a significant role in the realization of such a smart factory: 1) multi-core processors which are the key computing element of embedded systems, 2) cloud computing data centers as the supplier of a massive data storage and a large computational power. Both these categories are considered in the thesis, i.e., 1) the efficient use of embedded multi-core processors where multiple processors are located on the same chip, applied to execute a real-time application, and 2) the efficient use of multi-processors within a cloud computing data center. We address these two categories of multi-processor systems separately.  For each of them, we identify the key challenges to achieve a resource-efficient design of the system. We then formulate the problem and propose optimization solutions to optimize the efficiency of the system, while satisfying all timing constraints. Introducing a resource efficient solution for those two categories of multi-processor systems facilitates deployment of Industrie 4.0 in smart manufacturing factories where multi-core embedded processors and cloud computing data centers are two central cornerstones.