Browse > Article
http://dx.doi.org/10.3745/KIPSTA.2012.19A.3.129

Implementation of Multicore-Aware Load Balancing on Clusters through Data Distribution in Chapel  

Gu, Bon-Gen (Dept. of Computer Engineering at Chungju University)
Carpenter, Patrick (Dept. of Computer and Software Engineering at Auburn University)
Yu, Weikuan (Dept. of Computer and Software Engineering at Auburn University)
Abstract
In distributed memory architectures like clusters, each node stores a portion of data. How data is distributed across nodes influences the performance of such systems. The data distribution scheme is the strategy to distribute data across nodes and realize parallel data processing. Due to various reasons such as maintenance, scale up, upgrade, etc., the performance of nodes in a cluster can often become non-identical. In such clusters, data distribution without considering performance cannot efficiently distribute data on nodes. In this paper, we propose a new data distribution scheme based on the number of cores in nodes. We use the number of cores as the performance factor. In our data distribution scheme, each node is allocated an amount of data proportional to the number of cores in it. We implement our data distribution scheme using the Chapel language. To show our data distribution is effective in reducing the execution time of parallel applications, we implement Mandelbrot Set and ${\pi}$-Calculation programs with our data distribution scheme, and compare the execution times on a cluster. Based on experimental results on clusters of 8-core and 16-core nodes, we demonstrate that data distribution based on the number of cores can contribute to a reduction in the execution times of parallel programs on clusters.
Keywords
Data Distribution; Load Balancing; Multicore; Chapel;
Citations & Related Records
연도 인용수 순위
  • Reference
1 http://www.intel.com
2 B.L. Chamberlain, S.J. Deitz, D. Iten and S.E. Choi, "User-defined distributions and layouts in chapel: philosophy and framework," Proc.HotPar10, 2010.
3 C.D. Krieger, A. Stone and M.M Strout, "Mechanisms that Separate Algorithms from Implementations for Parallel Patterns," Proc. ParaPLoP'10, pp.1-12, 2010.
4 C.A. Bohn ang G.B. Lamont, "Load balancing for heterogeneous clusters of PCs," Future Generation Computer Systems: The International Journal of Grid Computing and eScience, Vol.18, No.3, pp.389-400, 2002.   DOI   ScienceOn
5 B.G. Gu, "TSCcp Load Sharing Algorithm for the Heterogeneous Cluster," Journal of Korean Institute of Information Technology, Vol.4, No.5, pp.29-36, Oct., 2006.
6 http://en.wikipedia.org/wiki/Mandelbrot_set
7 http://en.wikipedia.org/wiki/Monte_Carlo_method
8 B. Wilkinson and M. Allen, 'Parallel Programming: Technique and Applications Using Networked Workstations and Parallel Computers', Prentice Hall, 1999.
9 A. Sidelnik, B.L. Chamberlain, M.J. Garzaran and D. Padua, "Using the High Productivity Language Chapel to Target GPGPU Architectures," Technical Report , IDEALS, 2011.
10 R.E. Diaconescu and H.P. Zima, "An Approach to Data Distributions in Chapel," International Journal of High Performance Computing Applications, Vol.21, No.3, pp.313-335, Aug., 2007.   DOI
11 http://www.mpi-forum.org/
12 S.J. Deitz, B.L. Chamberlain, S.E.Choi and L. Prokowich, "Five Powerful Chapel Idioms," CUG2010, 2010.
13 A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek and V. Sunderam, 'PVM: Parallel Virtual Machine, A User's Guide and Tutorial for Networked Parallel Computing. Scientifice and Engineering Computation', MIT Press, 1994.
14 Cray Inc., Chapel Specification,0.795 ed., Cray Inc., Seattle, 2010.
15 L. Snyder, A Programmers Guide to ZPL, http://www.cs.washington.edu/research/zpl/, 1999.
16 B.L. Chamberlain, D. Callahan and H.P. Zima, "Parallel Programmability and the Chapel Language," International Journal of High Performance Computing Applications, Vol.21, No.3, pp.291-312, Aug., 2007.   DOI