Abstract
Parallel programming is one of the most effective approaches to handle complex problems regarding time complexity by reducing computation time, by getting the most of the capacity of the processors and shared-memory or distributed systems. One of the main ingredients of parallel programming is ‘Loops’ and especially DOALL loops. All loop scheduling algorithms try to achieve load balancing by using chunk resizing techniques (decreasing, increasing…). In this paper, prior loop scheduling algorithms will be evaluated on Mandelbrot. A new algorithm is obtained by merging the increasing and decreasing chunk size techniques in order to acquire the advantages of both approaches. The experimental results show that in the decreasing approach, a large number of small chunks in the last stages will increase the scheduling overhead because of the increasing of inter-processor communication. Also, the large chunk size of the initial stages will increase load imbalance. On the other hand, for the increasing approach, the large chunks assigned to processors at the last stages might increase load imbalance especially when iterations of the last stages are more time consuming than others. This work will introduce a new approach. This approach will try to minimize the load imbalance and communication overhead that are caused by using a decreasing chunk size approach and to minimize the load imbalance and scheduling overhead caused by the use of increase chunk size approach, which is going to provide better performance for many workload patterns.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Fann, Y.W., Yang, C.T., Tseng, S.S., Tsai, C.J.: An intelligent parallel loop scheduling for parallelizing compilers. J. Inf. Sci. Eng. 16(2), 169–200 (2000)
Philip, T., Das, C.R.: Evaluation of Loop Scheduling Algorithms on Distributed Memory Systems. Pennsylvania State University, Department of Computer Science and Engineering, College of Engineering (1996)
Devaney, R.L.: Unveiling the Mandelbrot set, Plus. Maths. Org. x, 1–17 (2006)
Kaminsky, A.: Building Parallel Programs: SMPs, Clusters & Java. Cengage Learning (2009)
Hwang, K., Jotwani, N.: Advanced Computer Architecture, 3rd. McGraw-Hill Education (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Deeb, H., Sarangi, A., Sarangi, S.K. (2021). Improvement of Load Balancing in Shared-Memory Multiprocessor Systems. In: Mishra, D., Buyya, R., Mohapatra, P., Patnaik, S. (eds) Intelligent and Cloud Computing. Smart Innovation, Systems and Technologies, vol 153. Springer, Singapore. https://doi.org/10.1007/978-981-15-6202-0_8
Download citation
DOI: https://doi.org/10.1007/978-981-15-6202-0_8
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-15-6201-3
Online ISBN: 978-981-15-6202-0
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)