A Topology Independent Heuristic Load Balancing Algorithm for Multiprocessor Environment

다중 프로세서 환경에서 연결구조에 무관한 휴리스틱 부하평형 알고리즘

  • Song Eui-Seok (Department of Electronics Engineering, Kookmin University) ;
  • Sung Yeong-Rak (School of Electrical Engineering, Kookmin University) ;
  • Oh Ha-Ryoung (School of Electrical Engineering, Kookmin University)
  • 송의석 (국민대학교 전자공학과 일반대학원) ;
  • 성영락 (국민대학교 전자정보통신공학부) ;
  • 오하령 (국민대학교 전자정보통신공학부)
  • Published : 2005.01.01

Abstract

This paper proposes an efficient heuristic load balancing algorithm for multiprocessor systems. The algorithm minimizes the number of idle links to distribute load traffic and reduces its communication cost. Each processor iteratively tries to transfer unit load to/from all neighbor processors. However, real load transfer is collectively done after all load traffic is calculated. This prevents useless traffic and thus reduces the overall load traffic. The proposed algorithm can be employed in various interconnection topologies with slight modifications. In this paper, it is applied to hypercube, mesh, k-ary n-cube and general graph environments. For performance evaluation, simulation studies are performed. The proposed algorithm and the well-known existing algorithms are implemented and compared. The results show that the proposed algorithm always balances the loads perfectly. furthermore, in comparison with the existing algorithms, it reduces the communication costs by 77%, 74% and 73% in the hypercube, the mesh, and k-ary n-cube, respectively.

본 논문에서는 다중 프로세서 시스템을 위한 효율적인 휴리스틱 부하 평형 알고리즘을 제안한다. 제안 알고리즘은 부하이동을 여러 링크로 분산시켜, 사용하지 않는 링크의 수를 최소화하고 그에 따라 통신비용이 감소한다. 각각의 프로세서는 모든 이웃한 프로세서에게 단위부하를 보내거나 받는 과정을 반복적으로 시도한다. 그리나 실제의 부하 이동은 모든 계산이 이루어진 후 수행된다. 이것은 불필요한 부하 이동을 막아 전체적으로 부하이동의 수가 감소한다. 제안된 알고리즘은 약간의 수정만으로 다양한 연결 구조를 갖는 다중 프로세서 시스템에 적용한 수 있다. 본 논문에서는 하이퍼큐브 구조, 메쉬 구조, k-ary n-cube 구조와 일반 그래프 구조에 제안 알고리즘을 적용해 보았다. 알고리즘의 성능평가를 위하여 모의실험을 하였다. 제안된 알고리즘과 잘 알려진 알고리즘을 구현하여 비교하였다. 그 결과 안된 알고리즘은 모든 경우에서 완전한 부하평형에 도달하였다. 또한 기존의 알고리즘과 비교하여 하이퍼큐브 구조에서는 약 77%, 메쉬 구조에서는 약 74%, 또한 k-ary 2,3-cube 구조에서는 약 73% 정도 통신비용을 감소시켰다.

Keywords

References

  1. 임화경, 장주욱, 김성천, 신속한 부하균등화를 위한 휴지링크의 최대활용방법, 정보과학회논문지, 시스템 및 이론, 제28권 제12호, pp.632-641, 200l
  2. M.Y. Wu and D.D. Gajski, Hypertool: A Programming Aid for Message-Passing Systems, IEEE Trans. on Parallel and Distributed Systems, Vol.1, No.3 pp.330-343, July 1992 https://doi.org/10.1109/71.80160
  3. M.Y. Wu, On Runtime Parallel Scheduling for Processor Load Balancing, IEEE Trans. on Parallel and Distributed Systems, Vol.8, No.2 pp.173-185, Feb.1997 https://doi.org/10.1109/71.577261
  4. G. Cybenko, Dynamic Load Balancing for Distributed Memory Multiprocessors, J. Parallel and Distributed Computing, Vol. 7, pp. 279-301, 1989 https://doi.org/10.1016/0743-7315(89)90021-X
  5. Min-You Wu, Wei Shu, DDE: A Modified Dimension Exchange Method for Load Balancing in k-ary n-cube, Journal of Parallel and Distributed Computing 44, pp.88-98, 1997 https://doi.org/10.1006/jpdc.1997.1345
  6. C. Hui, S. Chanson, Hydrodynamic Load Balancing, IEEE Trans. on Parallel and Distributed Systems, Vol.10, No.11, pp. 1118-1137, 1999 https://doi.org/10.1109/71.809572
  7. I. Ahnad, Y. Kwok, On Parallelizing the Multiprocessor Scheduling Problem, IEEE Trans. on Parallel and Distributed Systems, Vol.10, No.4, pp. 414-432, 1999 https://doi.org/10.1109/71.762819
  8. M. Mitzenmacher, How useful Is Old Information?, IEEE Trans. on Parallel and Distributed Systems, Vol.4, No.9, pp.979-993, 1993 https://doi.org/10.1109/71.824633
  9. Kyungwan Nam, Jaewon Seo, Sunggu Lee and Jong Kim, Syncronous Load Balancing in Hypercube Multicomputers with Fault Nodes, Journal of Parallel and Distributed Computing 58, pp.26-43, 1999 https://doi.org/10.1006/jpdc.1999.1547
  10. Leonid Oliker, PLUM:Parallel Load Balancing for Adaptive Unstructured Meshed, Journal of Parallel and Distributed Computing 52, pp.150-177, 1998 https://doi.org/10.1006/jpdc.1998.1469
  11. Marlin H. Mickle and Jo Ann M. Paul, Loading Balancing Using Heterogeneous Processors for Continuum Problems on a Mesh, Journal of Parallel and Distributed Computing 39, pp.66-73, 1996 https://doi.org/10.1006/jpdc.1996.0154
  12. S. Ranka, Y. Won, and S. Sahni, Programming a Hypercube Multicomputer, IEEE Software, pp. 69-77, Sept. 1988 https://doi.org/10.1109/52.7944
  13. Xu, C. Z., and Lau, F. C. M. Analysis of the generalized dimension exchange method for dynamic load balancing, Journal of Parallel and Distributed Computing 16, pp.385-393, Dec, 1992 https://doi.org/10.1016/0743-7315(92)90021-E
  14. Ching-Chih Han, Kang G. Shin, Sang Kyun Yun, On Laod Balancing in Multicomputer/Distributed Systems Equipped with Circuit or Cut-Through Switching Capability, IEEE Trans. on Computers, Vol.49, No.9, pp.947-957, 2000 https://doi.org/10.1109/12.869325
  15. Megan Thomas and Ellen W. Zegura, Generation and Analysis of Random Graphs to Model Internetworks. Technical Report GIT-CC-94-46, College of Computing, Georgia Tech.
  16. Ellen W. Zegura, Ken Calvert and S. Bhattacharjee, How to Model an Internetwork, Proceedings of IEEE Irfocom 96, San Francisco, CA. https://doi.org/10.1109/INFCOM.1996.493353
  17. K. Calvert, M.B. Doar, and E.W. Zegura, 'Modeling Internet Topology,' IEEE Communications, Vol. 35, No.6, pp, 160-163, 1997.(tools are available at http://www.cc.gatech.edu/projects/gtitm/) https://doi.org/10.1109/35.587723
  18. Ellen W. Zegura, Kenneth Calvert and M. Jeff Donahoo, A Quantitative Comparison of Graph-based Models for Internet Topology, IEEE/ACM Transactions on Networking, December 1997 https://doi.org/10.1109/90.650138