Abstract

We discuss a task scheduling problem in heterogeneous systems and propose a multistep scheduling algorithm to solve it. Existing scheduling algorithms formulated as 0-1 integer linear programming can be used to consider the optimality of task scheduling. However, they cannot address complicated relations among tasks or communication costs among processors. Therefore, we propose a scheduling algorithm that formulates communication costs as 0-1 integer linear programming. On the other hand, 0-1 integer linear programming takes a long time to calculate the scheduling results because it is NP-complete. Thus, scheduling time also needs to be decreased. A solution for decreasing scheduling time is a graph clustering which decomposes a large task graph into smaller subtask graphs (clusters). Also, it is important for parallel and distributed processing to find task parallelism in a task graph. Then, we also propose a <i>clustering algorithm based on SCAN</i>. SCAN is an algorithm for finding clusters in a network. The <i>clustering algorithm based on SCAN</i> can find task parallelism in a task graph. In numerical examples, we argue the following two points. First, our multistep scheduling algorithm resolves the scheduling problem in heterogeneous systems. Second, it is superior to the existing scheduling algorithms in terms of calculation time.

Highlights

  • Computer simulation is useful for various calculations, for example, for developing medicine [1], analyzing the orbit of rockets [2], and developing various other products [3].Computer simulation can reduce the time and costs required to make prototypes and tell us in advance the amount of deterioration and risk in what we do

  • We propose a clustering algorithm based on structural clustering algorithm for networks (SCAN), which is modified for task graphs

  • We find clusters in a task graph by using the proposed clustering algorithm based on SCAN

Read more

Summary

Introduction

Computer simulation is useful for various calculations, for example, for developing medicine [1], analyzing the orbit of rockets [2], and developing various other products [3]. This research is in the field of parallel and distributed processing It is important for increasing the computation speed for assigning tasks to appropriate processors or computers. Shioda et al.’s algorithm [10] cannot be used to take into account communication costs among PEs. Consider multicore CPUs and GPUs composed of multiple cores that have the same functions as PEs. In parallel and distributed processing, communication among PEs generally occurs when data are transferred from one PE to another. The third is the clusters scheduling step, which involves assigning clusters to PEs by taking into account communication costs among PEs. We argue that the proposed multistep scheduling algorithm is efficient in various numerical experiment environments.

Problem Definition
Existing Algorithms
Proposed Algorithms
Numerical Examples
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call