An Efficient Task Assignment Algorithm for Heterogeneous Multi-Computers

이종의 다중컴퓨터에서 태스크 할당을 위한 효율적인 알고리즘

  • 서경룡 (국립부경대학교 컴퓨터공학과) ;
  • 여정모 (국립부경대학교 전자계산학과)
  • Published : 1998.05.01

Abstract

In this paper, we are considering a heterogeneous processor system in which each processor may have different performance and reliability characteristics. In other to fully utilize this diversity of processing power it is advantageous to assign the program modules of a distributed program to the processors in such a way that the execution time of the entire program is minimized. This assignment of tasks to processors to maximize performance is commonly called load balancing, since the overloaded processors can perform their own processing with the performance degradation. For the task assignment problem, we propose a new objective function which formulates this imbalancing cost. Thus the task assignment problem is to be carried out so that each module is assigned to a processor whose capabilities are most appropriate for the module, and the total cost is minimized that sum of inter-processor communication cost and execution cost and imbalance cost of the assignment. To find optimal assignment is known to be NP-hard, and thus we proposed an efficient heuristic algorithm with time complexity $O(n^2m)$ in case of m task modules and n processors.

본 논문은 서로 다른 성능을 가진 프로세서들로 구성된 다중컴퓨터 시스템에서 태스크의 할당에 관한 문제를 다룬다. 다중 컴퓨터 시스템의 성능을 최대로 발휘하기 위해서는 분산구조를 가진 프로그램 모듈들을 실행시간을 최소화하도록 각 프로세서에 할당하여야 한다. 이러한 할당방법을 태스크의 균등할당이라 하는데 부하가 적절하기 못한 프로세서는 제 성능을 발휘하지 못하고 전체 시스템의 성능을 저하시키기 때문에 태스크를 균등하게 할당하는 것이 성능향상을 위한 좋은 방법이다. 이러한 태스크 할당문제를 해결하기 위하여 본 논문에서는 비 균등 할당의 비용을 수식화 할 수 있는 새로운 목적함수를 제시하였다. 제안된 목적함수를 사용하여 태스크 할당문제를 통신비용과 작업비용, 그리고 비 균등 할당비용의 합을 최소화하는 문제로 단순화 시켰다. 이렇게 변화된 문제는 NP-hard의 문제이므로 최적에 근사한 할당을 구하는 $O(n^2m)$의 복잡도를 가지는 휴리스틱 알고리즘을 제안하였다. 이때 m, n은 각각 태스크와 프로세서의 개수이다.

Keywords