Balancing Load on a Multiprocessor System with Event-Driven Approach
There are many causes of imbalanced load on a multiprocessor system such as heterogeneity of processors, parallel execution of tasks of varying complexity and also difficulties in estimating complexity of a particular task, however, if one can treat computer as an event-driven processing system and treat tasks as events running through this system the problem of load balance can be reduced to a well-posed mathematical problem which further simplifies to solving a single equation. The load balancer measures both complexity of the task being solved and performance of a computer running this particular task so that a load distribution can be adjusted accordingly. Such load balancer is implemented as a computer program and is known to be able to balance the load on heterogeneous processors in a number of scenarios.
KeywordsLoad balance Event-driven architecture Heterogeneous system Multiprocessor computer
Research was carried out using computational resources provided by Resource Center “Computer Center of SPbU”(Official web site: http://cc.spbu.ru.) and supported by Russian Foundation for Basic Research (project N 13-07-00747) and Saint Petersburg State University (projects N 9.38.674.2013, 0.37.155.2014).
- 1.Armstrong, J.: Making reliable distributed systems in the presence of sodware errors. Ph.D. thesis, The Royal Institute of Technology Stockholm, Sweden (2003)Google Scholar
- 3.Degtyarev, A., Gankevich, I.: Wave surface generation using OpenCL, OpenMP and MPI. In: Proceedings of 8th International Conference “Computer Science & Information Technologies”, pp. 248–251 (2011)Google Scholar
- 4.Degtyarev, A., Gankevich, I.: Evaluation of hydrodynamic pressures for autoregression model of irregular waves. In: Proceedings of 11th International Conference “Stability of Ships and Ocean Vehicles”, Athens, pp. 841–852 (2012)Google Scholar
- 5.Degtyarev, A.B., Reed, A.M.: Modelling of incident waves near the ship’s hull (application of autoregressive approach in problems of simulation of rough seas). In: Proceedings of the 12th International Ship Stability Workshop (2011)Google Scholar
- 6.Degtyarev, A.B., Reed, A.M.: Synoptic and short-term modeling of ocean waves. In: Proceedings of 29th Symposium on Naval Hydrodynamics (2012)Google Scholar
- 9.Hapner, M., Burridge, R., Sharma, R., Fialli, J., Stout, K.: Java Message Service. Sun Microsystems Inc., Santa Clara (2002)Google Scholar
- 10.Kale, L.V., Krishnan, S.: CHARM++: A Portable Concurrent Object Oriented System Based On C++, vol. 28. ACM, Seattle (1993)Google Scholar
- 11.Krasner, G.E., Pope, S.T., et al.: A description of the model-view-controller user interface paradigm in the smalltalk-80 system. J. Object Oriented Program. 1(3), 26–49 (1988)Google Scholar
- 12.Pilla, L.L., Ribeiro, C.P., Cordeiro, D., Méhaut, J.-F.: Charm++ on numa platforms: the impact of smp optimizations and a numa-aware load balancer. In: 4th Workshop of the INRIA-Illinois Joint Laboratory on Petascale Computing, Urbana, IL, USA (2010)Google Scholar
- 14.Zheng, G., Meneses, E., Bhatele, A., Kale, L.V.: Hierarchical load balancing for charm++ applications on large supercomputers. In: 39th International Conference on Parallel Processing Workshops (ICPPW), pp. 436–444. IEEE (2010)Google Scholar