Abstract
For some applications, the computational structure changes dynamically during the program execution. When this happens, static partitioning and allocation of tasks are not enough to achieve high performance in parallel computers. In this paper, we propose a dynamic load balancing algorithm efficiently distributes the computation with dynamically growing tree structure to processors. We present an implementation technique for the algorithm on mesh architectures, and analyze its complexity. We also demonstrate through experiments how our algorithm provides good quality solutions.
어떤 응용프로그램에서는 계산구조가 프로그램의 수행도중 동적으로 변한다. 이런 경우 정적으로 태스크를 분할하고 할당하는 것은 병렬컴퓨터에서 높은 성능을 얻는데 충분하지 못하다. 이 논문에서는 동적으로 변하는 트리구조를 가진 계산을 프로세서들에 효율적으로 분배하는 부하분산 알고리즘을 소개한다. 이 알고리즘의 메쉬구조상에서의 구현기법이 소개되고 복잡도가 분석된다. 실험을 통하여 이 알고리즘이 좋은 성능을 나타내는 것을 보인다.