This paper studies the problem of efficiently scheduling dependent computational tasks on heterogeneous computing systems. Computational tasks with precedence constraints are commonly represented by a directed acyclic graph (DAG). Four… Click to show full abstract
This paper studies the problem of efficiently scheduling dependent computational tasks on heterogeneous computing systems. Computational tasks with precedence constraints are commonly represented by a directed acyclic graph (DAG). Four commonly used algorithms including a cellular genetic algorithm (CGA) are performed for scheduling a special type of DAGs derived from physical system simulation programs. Experimental results show that CGA outperforms the other three algorithms. However, when solving large instances of the dependent task scheduling problem, which are often the case for physical system simulation programs, a CPU implementation of the genetic algorithms can be extremely time consuming. The time complexity of producing a generation with a CPU is $$O(n_{cell} \; n^{2})$$O(ncelln2), where n is the size of DAG, and $$n_{cell}$$ncell is the size of population. To improve runtimes, this paper presents a graphics processing unit (GPU) based implementation of the genetic algorithms. The time complexity of creating a new generation with a GPU is reduced to O(n). The experimental results show that significant speedups can be achieved by harnessing the power of a modern GPU.
               
Click one of the above tabs to view related content.