Locality-Optimized Mixed Static/Dynamic Scheduling for Improving Load Balancing on SMPs
暂无分享,去创建一个
Application performance can be degraded significantly due to node-local load imbalances during application execution. Prior work suggested using a mixed static/dynamic scheduling approach for handling this problem, specifically in the context of fine-grained, transient load imbalances. Here, we consider an alternate strategy for more general load imbalances where fine-grained, transient load imbalance may be coupled with coarse-grained load imbalance. Specifically, we implement a scheduling scheme in which we modify the data layout in mixed static/dynamic scheduling, and add an additional tuned constraint in the dequeue function of our scheduler. Through experimentation of an n-body particle simulation code on modern multi-core architectures, our technique gives a 19.4% performance gain over dynamic scheduling, and an overall 48.6% performance gain over standard static scheduling.
[1] Torsten Hoefler,et al. Characterizing the Influence of System Noise on Large-Scale Applications by Simulation , 2010, 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis.
[2] CONSTANTINE D. POLYCHRONOPOULOS,et al. Guided Self-Scheduling: A Practical Scheduling Scheme for Parallel Supercomputers , 1987, IEEE Transactions on Computers.
[3] William Gropp,et al. Hybrid Static/dynamic Scheduling for Already Optimized Dense Matrix Factorization , 2011, 2012 IEEE 26th International Parallel and Distributed Processing Symposium.