Real-Time Partitioned Scheduling: Exploiting the Inter-Resource Affinity for Task Allocation on Multiprocessors
Real-time edge computing is forging its place in cloud computing rapidly, and requirements for high-performance edge devices are becoming increasingly complex. Multiprocessor edge devices are an attractive choice to meet these higher performance requirements. However, multiprocessor devices encounter inherent challenges when handling on-chip shared resources. The concurrent access to these resources by the tasks requesting more than one shared resource and running on multiple processors may face huge blocking times, which can lead to missed hard real-time deadlines and cause a catastrophic system failure. To reduce the task blocking time, we propose a task allocation algorithm that takes advantage of inter-resource affinity and allocates all the tasks accessing multiple shared resources having inter-resource affinity on the same processor of the multiprocessor. The proposed algorithm reduces global resources and remote blocking, which subsequently increase schedulability of task sets and reduce the processor utilization. In our experiments, we compare the proposed task allocation algorithm SRTA with existing well-known task allocation strategies SPA, ROP, and blocking-agnostic FFD. The experimental results reveal that the SRTA, on the average, can allocate 1.80, 2.34, and 3.14 times more task sets as compared to ROP, SPA, and FFD, respectively and reduces the number of globally shared resources significantly. © 2019 John Wiley & Sons, Ltd.