Efficient Scheduling, Mapping and Resource Prediction for Dynamic Run time Operating Systems
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Efficient Scheduling, Mapping and Resource Prediction for Dynamic Run time Operating Systems Several embedded application domains for reconfigurable systems tend to combine frequent changes with high performance demands of their workloads such as image processing, wearable computing and network processors. Time multiplexing of reconfigurable hardware resources raises a number of new issues, ranging from run-time systems to complex programming models that usually form a Reconfigurable hardware Operating System (ROS). In this thesis a novel ROS framework that aids the designer from the early design stages all the way down to the hardware implementation is proposed. An efficient reconfigurable platform was implemented along with several novel scheduling algorithms. The algorithms proposed tend to reuse hardware tasks to reduce reconfiguration overhead, migrate tasks between software/hardware to efficiently utilize resources and reduce computation time. A framework for efficient mapping of execution units to task graphs in a runtime reconfigurable system is also designed. The framework utilizes an Island Based Genetic Algorithm flow that optimizes several objectives including performance, area and power consumption. The proposed Island based GA framework achieves on average 55.2% improvement over a single GA implementation and 80.7% improvement over a baseline random allocation and binding approach. Finally, we present a novel adaptive and dynamic methodology based on a Machine Learning approach for predicting and estimating the necessary resources for an application based on past historical information. An important feature of the proposed methodology is that the system is able to learn and generalize and, therefore, is expected to improve its accuracy over time.