An energy-efficient algorithm for virtual machine placement optimization in cloud data centers Sadoon Azizi 1 Maz’har Zandsalimi 1 Dawei Li 2 Received: 25 July 2019 / Revised: 13 January 2020 / Accepted: 13 March 2020 Ó Springer Science+Business Media, LLC, part of Springer Nature 2020 Abstract Cloud providers offer computing services based on user demands using the Infrastructure as a Service (IaaS) service model. In a cloud data center, it is possible that multiple Virtual Machines (VMs) run on a Physical Machine (PM) using virtualization technology. Virtual Machine Placement (VMP) problem is the mapping of virtual machines across multiple physical ones. This process plays a vital role in defining energy consumption and resource usage efficiency in the cloud data center infrastructure. However, providing an efficient solution is not trivial due to difficulties such as machine heterogeneity, multi-dimensional resources, and large scale cloud data centers. In this paper, we propose an efficient heuristic algorithm that focuses on power consumption and resource wastage optimization to solve the aforementioned problem. The proposed algorithm, called MinPR, minimizes the total power consumption by reducing the number of active physical machines and prioritizing the power-efficient ones. Also, it reduces resource wastage by maximizing and bal- ancing resource utilization among physical machines. To achieve these goals, we propose a new Resource Usage Factor model that manages virtual machine placement on physical machines using reward and penalty mechanisms. Simulations based on cloud user-customized VMs and Amazon EC2 Instances workloads illustrate that the proposed algorithm outperforms existing approaches. In particular, the proposed algorithm reduces total energy consumption by up to 15% for cloud user-customized VMs and by up to 10% for Amazon EC2 Instances. Keywords Cloud computing Infrastructure as a service (IaaS) Virtual machine placement (VMP) Optimization Energy efficiency Resource utilization 1 Introduction Cloud computing is a relatively new model to offer users compute, network, storage, platform and application ser- vices on demand through Internet infrastructure. Cloud computing has become more and more popular because cloud services can be provided in a scalable and elastic fashion based on user demands. Virtualization enables cloud data centers to share a physical machine’s resources among multiple tenants. The ever-increasing demand for cloud infrastructure leads to noticeable energy consumption and greenhouse gas emissions. Based on Amazon’s estimations, 42% of a data center’s operational cost is due to its energy con- sumption [13]. High energy consumption is a potential threat for cloud providers as it increases the total cost of ownership [4]. High energy consumption comes from both the amount of computational resources used in cloud infrastructure and their power inefficiencies, and the inef- ficient usage of these resources [5]. Efficient usage of physical machine resources using virtualization is a promising solution to overcome energy inefficiencies. Specifically, Virtual Machine Placement (VMP) opti- mization has become a trending topic among researchers in recent years [24, 623]. & Sadoon Azizi s.azizi@uok.ac.ir Maz’har Zandsalimi m47h4r@gmail.com Dawei Li dawei.li@montclair.edu 1 Department of Computer Engineering and IT, University of Kurdistan, Sanandaj, Iran 2 Department of Computer Science, Montclair State University, Montclair, NJ, USA 123 Cluster Computing https://doi.org/10.1007/s10586-020-03096-0