Scheduling Algorithm for Asymmetric Multicore Platforms Using Non-Uniform Laxity Based Clustering and Duplication
In this paper, a new scheduling algorithm using task clustering and non-uniform laxity is proposed. This algorithm forms task clusters after analyzing the task dependencies. For each task cluster comprising of a parent and dependent tasks, a cluster parameter is computed. Based on this parameter, a rank is assigned to each cluster. The clusters are scheduled in the order of their rank, so as to minimize the communication cost and reduce the utilization of slack resources. Clusters are scheduled as far as possible on the same core. If a cluster cannot be scheduled completely on the same core, the parent task is either migrated or duplicated depending on the associated costs involved. The algorithm has been tested using 15 different programs as tasks.