RACS: A framework for Resource Aware Cloud computing
The growing needs for building complex real-time applications coupled with advancements in computing technology signify the importance of developing efficient algorithms for dynamic real-time systems. Dynamic real-time systems need to be designed not only to deal with expected load scenarios, but also to handle overloads by allowing graceful degradation in system performance. Value-based scheduling is a means by which graceful degradation can be achieved by executing critical tasks that offer high values/benefits/rewards to the functioning of the system. In value-based scheduling, each task is associated with a reward and penalty that is offered to the system depending on whether the task meets or misses its deadline. Some value-based scheduling defines “performance index” that captures not only the reward/penalty parameters, but also the tradeoff between schedulability and reliability. In this paper, we propose a reliability-aware value-based dynamic scheduling algorithm for multiprocessor real-time systems, whose objective is to maximize the performance index of the system. The proposed scheduler selects a suitable redundancy level for each task so as to increase the performance index of the system. We have conducted simulation studies to evaluate the effectiveness of the proposed scheduler and its variants for a wide range of values of system parameters. Our studies show that the proposed scheduler offers a high “value ratio” (defined with respect to a near-optimal baseline algorithm) for non-trivial task sets.