Abstract
Given the increasing prevalence of compute/data intensive applications, the explosive growth in data, and the emergence of cloud computing, there is an urgent need for effective approaches to support such applications in non-dedicated heterogeneous distributed environments. This paper proposes an efficient technique for handling parallel tasks, while dynamically maintaining load balancing. Such tasks include concurrently downloading files from replicated sources; simultaneously using multiple network interfaces for message transfers; and executing parallel computations on independent distributed processors. This technique, DDOps, (Dual Direction Operations) enables efficient utilization of available resources in a parallel/distributed environment without imposing any significant control overhead. The idea is based on the notion of producer pairs that perform tasks in parallel from opposite directions and the consumers that distribute and control the work and receive and combine the results. Most dynamic load balancing approaches require prior knowledge and/or constant monitoring at run time. In DDOps, load balancing does not require prior knowledge or run-time monitoring. Rather, load balancing is automatically inherent as the tasks are handled from the opposite directions, allowing the processing to continue until the producers meet indicating the completion of all tasks at the same time. Thus DDOps is most suitable for heterogeneous environments where resources vary in specifications, locations, and operating conditions. In addition, since DDOps does not require producers to communicate at all, the network effect is minimized.
Similar content being viewed by others
References
Adiseshu, H., Parulkar, G., Vargese, G.: A reliable and scalable striping protocol. In: Computer Communication Review, October 1996 vol. 26, pp. 131–141. ACM, New York (1996)
Agarwal, R., Gustavson, F., Zubair, M.: A high performance matrix multiplication algorithm on a distributed-memory parallel computer, using overlapped communication. IBM J. Res. Dev. 38(6), 673–681 (1994)
Al-Azzoni, I., Down, D.G.: Decentralized load balancing for heterogeneous grids. In: Proc. of the International Conference on Future Computing, pp. 545–550 (2009)
Al-Jaroodi, J., Mohamed, N.: DDFTP: dual-direction FTP. In: Proc. of the 11th IEEE/ACM International Symposium on Cluster, Cloud, and Grid Computing (CCGrid), Newport Beach, CA, USA, May 2011
Al-Jaroodi, J., Mohamed, N., Jiang, H., Swanson, D.: Middleware infrastructure for parallel and distributed programming models on heterogeneous systems. IEEE Trans. Parallel Distrib. Syst. 14(11), 1100–1111 (2003)
Allcock, B., Bester, J., Bresnahan, J., Chervenak, A.L., Kesselman, C., Meder, S., Nefedova, V., Quesnel, D., Tuecke, S., Foster, I.: Secure, efficient data transport and replica management for high-performance data-intensive computing. In: Proc. of the IEEE 18th Symposium on Mass Storage Systems and Technologies, San Diego, CA, USA, April 2001
Alonso, P., Reddy, R., Lastovetsky, A.: Experimental study of six different implementations of parallel matrix multiplication on heterogeneous computational clusters of multicore processors. In: Proc. of the 18th Euromicro Conference on Parallel, Distributed and Network-Based Processing (2010)
Aubanel, E.: Resource-aware load balancing of parallel applications. In: Handbook of Research on Grid Technologies and Utility Computing: Concepts for Managing Large-Scale Applications, May 2009, pp. 12–21. IGI Global, Hershey (2009)
Beaumont, O., Boudet, V.: Matrix multiplication on heterogeneous platforms. In: IEEE Transaction on Parallel and Distributed Systems, vol. 12, pp. 1033–1051 (2001)
Beowulf Ethernet channel bonding. http://www.phy.duke.edu/~rgb/brahma/Resources/beowulf/software/bonding.html. Accessed Apr 2013
Bhardwaj, D., Kumar, R.: A parallel file transfer protocol for clusters and grid systems. In: Proc. of the 1st International Conference on e-Science and Grid Computing (e-Science), pp. 248–254 (2005)
Blackford, L.S., Choi, J., Cleary, A., D’Azevedo, E., Demmel, J., Dhillon, I., Dongarra, J., Hammarling, S., Henry, G., Petitet, A., Stanley, K., Walker, D., Whaley, R.C.: ScaLAPACK: a linear algebra library for message-passing computers. In: Proc. of the 8th SIAM Conference on Parallel Processing for Scientific Computing, (PPSC), Minneapolis, Minnesota, USA, March 1997, pp. 14–17 (1997)
Boman, E.G., Catalyurek, U.V., Chevalier, C., Devine, K.D., Safro, I., Wolf, M.M.: Advances in parallel partitioning, load balancing and matrix ordering for scientific computing. J. Phys. Conf. Ser. 180, 1 (2009)
Channel bonding performance. http://www.scl.ameslab.gov/Projects/MP_Lite/perf_cb_fe.html. Accesssed Apr 2013
Chiasson, J., Tang, Z., Ghanem, J., Abdallah, C.T., Birdwell, J.D., Hayat, M.M., Jérez, H.: The effect of time delays on the stability of load balancing algorithms for parallel computations. IEEE Trans. Control Syst. Technol. 13(6), 932–942 (2005)
Chung, I., Bae, Y.: The design of an efficient load balancing algorithm employing block design. J. Appl. Math. Comput. 14(1–2), 343–351 (2004)
Configuring Ethernet channel bonding. http://www.linuxtopia.org/online_books/linux_system_administration/redhat_cluster_configuration_and_management/generated-index.html. Accessed Apr 2013
De Giusti, A.E., Naiouf, M.R., De Giusti, L.C., Chichizola, F.: Dynamic load balancing in parallel processing on non-homogeneous clusters. J. Comput. Sci. Technol. 5(4), 272–278 (2005)
Dhakal, S., Hayat, M., Pezoa, J.E., Yang, C., Bader, D.A.: Dynamic load balancing in distributed systems in the presence of delays: a regeneration-theory approach. IEEE Trans. Parallel Distrib. Syst. 18(4), 485–497 (2007)
Eggen, M., Franklin, N., Eggen, R.: Load balancing on a non-dedicated heterogeneous network of workstations. In: Proc. of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA), pp. 856–862 (2002)
Figueira, S., Berman, F.: A slowdown model for applications executing on time-shared clusters of workstations. IEEE Trans. Parallel Distrib. Syst. 12(6), 653–670 (2001)
File transfer protocol, RFC 959. http://www.faqs.org/rfcs/rfc959.html. Accessed Apr 2013
Fox, G., Otto, S., Hey, A.: Matrix algorithms on a hypercube I: matrix multiplication. Parallel Comput. 3, 17–31 (1987)
FTP client software and FTP server software. http://en.wikipedia.org/wiki/Comparison_of_FTP_client_software, http://en.wikipedia.org/wiki/Comparison_of_FTP_server_software. Accessed Apr 2013
Funasaka, J., Kawano, A., Ishida, K.: Implementation issues of parallel downloading methods for a proxy system. In: Proc. of the 4th International Workshop on Assurance in Distributed Systems and Networks (ICDCSW), vol. 1, pp. 58–64 (2005)
GridFTP: universal data transfer for the grid, The Globus Project, documentation. The University of Chicago and The University of Southern CA, USA. http://www.globus.org/alliance/publications/papers.php. Accessed Apr 2013
Hargrove, W., Hoffman, F.: Optimizing master/slave dynamic load balancing in heterogeneous parallel environments. White paper, Oak Ridge National Laboratory, Oak, Ridge, TN (1999)
HPSS user’s guide—high performance storage system, release 7.1, 2009 International Business Machines Corporation, USA, Feb. 2009
Hsu, C.-H., Chu, C.-W., Chou, C.-H.: Bandwidth sensitive co-allocation scheme for parallel downloading in data grid. In: Proc. of the IEEE International Symposium on Parallel and Distributed Processing with Applications (ISPA), pp. 34–39 (2009)
Johnsen, E.S., Anshus, O.J., Bjørndalen, J.M., Bongo, L.A.: Survey of optimizing techniques for parallel programs running on computer clusters. Technical report, Department of Computer Science, University of Tromsø, September (2003). http://www.idi.ntnu.no/~elster/notur-cluster03/NOTUR_ET_Cluster_A12b_ifi_uit_survey.pdf. Accessed Apr 2013
Kathiresan, N.: Adaptive distributed load balancing for heterogeneous computing system using global scheduler policy. In: Proc. of the 4th International Working Conference on Performance Modelling and Evaluation of Heterogeneous Networks, UK, September 2006
Katz, R., Gibson, G., Patterson, D.: Disk system architectures for high performance computing. Proc. IEEE 77(12), 1842–1858 (1989)
Kawano, A., Funasaka, J., Ishida, K.: Parallel downloading using variable length blocks for proxy servers. In: Proc. of the 27th International Conference on Distributed Computing Systems Workshops (ICDCSW) (2007)
Khan, S.U., Ahmad, I.: A cooperative game theoretical technique for joint optimization of energy consumption and response time in computational grids. IEEE Trans. Parallel Distrib. Syst. 20(3), 346–360 (2009)
Kliazovich, D., Bouvry, P., Khan, S.U.: DENS: data center energy-efficient network-aware scheduling. Clust. Comput. 16(1), 65–75 (2013)
Kołodziej, J., Khan, S.U., Wang, L., Byrski, A., Min-Allah, N., Madani, S.A.: Hierarchical genetic-based grid scheduling with energy optimization. Clust. Comput. (1994). doi:10.1007/s10586-012-0226-7
Kumar, V., Grama, A., Gupta, A., Karypis, G.: Introduction to Parallel Computing. Benjamin-Cummings, Redwood City (1994)
Li, Y., Lan, Z.: A survey of load balancing in grid computing. In: Computational and Information Science. Lecture Notes in Computer Science, vol. 3314, pp. 280–285 (2005)
Lim, S.B., Fox, G., Kaplan, A., Pallickara, S., Pierce, M.: GridFTP and parallel TCP support in NaradaBrokering. In: Distributed and Parallel Computing. Lecture Notes in Computer Science, vol. 3719, pp. 93–102 (2005)
Mateescu, G.: Parallel sorting on heterogeneous platforms. In: Proc. of the 16th International Symposium on High Performance Computing Systems and Applications, pp. 116–117, June 2002
Mohamed, N., Al-Jaroodi, J.: Self-configured multiple-network-interface socket. J. Netw. Comput. Appl. 33(1), 35–42 (2010)
Mohamed, N., Al-Jaroodi, J., Jiang, H., Swanson, D.: A middleware-level parallel transfer technique over multiple network interfaces. In: Proc. of the ClusterWorld Conference & Expo, San Jose, CA, June 2003
Pinar, A., Hendrickson, B.: Improving load balance with flexibly assignable tasks. IEEE Trans. Parallel Distrib. Syst. 16(10), 956–965 (2005)
Pınar, A., Tabak, E.K., Aykanat, C.: One-dimensional partitioning for heterogeneous systems: theory and practice. J. Parallel Distrib. Comput. 68, 1473–1486 (2008)
Pinel, F., Pecero, J.E., Bouvry, P., Khan, S.U.: A two-phase heuristic for the scheduling of independent tasks on computational grids. In: Proc. of the ACM/IEEE/IFIP International Conference on High Performance Computing and Simulation (HPCS), Istanbul, Turkey, July 2011, pp. 471–477 (2011)
Pinel, F., Pecero, J.E., Khan, S.U., Bouvry, P.: Utilizing GPUs to solve large instances of the tasks mapping problem. In: Proc. of the International Research Workshop on Advanced High Performance Computing Systems, Cetraro, Italy, June 2011
Pinel, F., Dorronsoro, B., Pecero, J.E., Bouvry, P., Khan, S.U.: A two-phase heuristic for the energy-efficient scheduling of independent tasks on computational grids. Clust. Comput.. doi:10.1007/s10586-012-0207-x (2012).
Qureshi, K., Rehman, A., Manuel, P.: Enhanced GridSim architecture with load balancing. J. Supercomput. (2010). doi:10.1007/s11227-010-0402-6
Rus, P., Stok, B., Mole, N.: Parallel computing with load balancing on heterogeneous distributed systems. Adv. Eng. Softw. 34(4), 185–201 (2003)
Theoharakis, V., Guerin, R.: SONET OD-12 interface for variable length packets. In: Proc. of the 2nd International Conference on Computer Communication and Networks (1993)
Transmission control protocol, RFC 793. http://www.faqs.org/rfcs/rfc793.html. Accessed Apr 2013
Traw, C.B.S., Smith, J.: Striping within the network subsystem. IEEE Netw. 9(4), 22–32 (1995)
Tudruj, M., Borkowski, J., Koponski, D.J.: Load balancing with migration based on synchronizers in PS-GRADE graphical tool. In: Proc. of the 4th International Symposium on Parallel and Distributed Computing, July 2005, pp. 105–112 (2005)
Valentini, G.L., Lassonde, W., Khan, S.U., Min-Allah, N., Madani, S.A., Li, J., Zhang, L., Wang, L., Ghani, N., Kolodziej, J., Li, H., Zomaya, A.Y., Xu, C.-Z., Balaji, P., Vishnu, A., Pinel, F., Pecero, J.E., Kliazovich, D., Bouvry, P.: An overview of energy efficiency techniques in cluster computing systems. Clust. Comput. 16(1), 3–15 (2013)
Yagoubi, B., Medebber, M.: A load balancing model for grid environment. In: Proc. of the 22nd International Symposium on Computer and Information Sciences, Turkey, pp. 1–7 (2007)
Zamanifar, K., Nematbakhsh, N., Sadjady, R.S.: A new load balancing algorithm in parallel computing. In: Proc. of the 2nd International Conference on Communication Software and Networks (ICCSN), pp. 449–453 (2010)
Zhang, Q., Li, Z.: Data transfer based on multiple replicas in the grid environment. In: Proc. of the 5th Annual ChinaGrid Conference, Guangzhou, China, July 2010, pp. 240–244 (2010)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Mohamed, N., Al-Jaroodi, J. & Jiang, H. DDOps: dual-direction operations for load balancing on non-dedicated heterogeneous distributed systems. Cluster Comput 17, 503–528 (2014). https://doi.org/10.1007/s10586-013-0294-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-013-0294-3