Improving Energy Consumption in Iterative Problems Using Machine Learning

To reach the new milestone in High Performance Computing, energy and power constraints have to be considered. Optimal workload distributions are necessary in heterogeneous architectures to avoid inefficient usage of computational resources. Static load balancing techniques are not able to provide optimal workload distributions for problems of irregular nature. On the other hand, dynamic load balancing algorithms are coerced by energy metrics that are usually slow and difficult to obtain. We present a methodology based on Machine Learning to perform dynamic load balancing in iterative problems. Machine Learning models are trained using data acquired during previous executions. We compare this new approach to two dynamic workload balancing techniques already proven in the literature. Inference times for the Machine Learning models are fast enough to be applied in this environment. These new predictive models further improve the workload distribution, reducing the energy consumption of iterative problems.

[1]  Alexey Lastovetsky,et al.  Bi-Objective Optimization of Data-Parallel Applications on Homogeneous Multicore Clusters for Performance and Energy , 2018, IEEE Transactions on Computers.

[2]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[3]  Dzmitry Kliazovich,et al.  HEROS: Energy-Efficient Load Balancing for Heterogeneous Data Centers , 2015, 2015 IEEE 8th International Conference on Cloud Computing.

[4]  Francisco Almeida,et al.  A heuristic technique to improve energy efficiency with dynamic load balancing , 2018, The Journal of Supercomputing.

[5]  Max Kuhn,et al.  Building Predictive Models in R Using the caret Package , 2008 .

[6]  Jordi Torres,et al.  Towards energy-aware scheduling in data centers using machine learning , 2010, e-Energy.

[7]  Francisco Almeida,et al.  Dynamic load balancing on heterogeneous multi-GPU systems , 2013, Comput. Electr. Eng..

[8]  Geoffrey C. Fox,et al.  Learning Everywhere: Pervasive Machine Learning for Effective High-Performance Computation , 2019, 2019 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW).

[9]  J. Friedman Multivariate adaptive regression splines , 1990 .

[10]  Francisco Almeida,et al.  Measuring energy consumption using EML (energy measurement library) , 2014, Computer Science - Research and Development.

[11]  Prasanna Balaprakash,et al.  Machine-Learning-Based Load Balancing for Community Ice Code Component in CESM , 2014, VECPAR.

[12]  José A. Martínez,et al.  An approach to optimise the energy efficiency of iterative computation on integrated GPU–CPU systems , 2016, The Journal of Supercomputing.

[13]  Laxmikant V. Kalé,et al.  Towards realizing the potential of malleable jobs , 2014, 2014 21st International Conference on High Performance Computing (HiPC).

[14]  Shang-Liang Chen,et al.  CLB: A novel load balancing architecture and algorithm for cloud services , 2017, Comput. Electr. Eng..

[15]  Jesús Carretero,et al.  Enhancing the performance of malleable MPI applications by using performance-aware dynamic reconfiguration , 2015, Parallel Comput..