International Journal of Computational Intelligence and Informatics, Vol. 6: No. 1, June2016 ISSN: 2349-6363 53 Optimized Algorithms for Virtual Machine Placement based on Multi-Dimensional Resource Characteristics in Cloud Computing Systems T. Thiruvenkadam Part Time Research Scholar Department of Computer Science Periyar University, Salem mailone.thiru@gmail.com P. Kamalakkannan Department of Computer Science Arignar Anna Govt., Arts College Namakkal,Tamil Nadu, India Kamal_karthi96@yahoo.co.in Abstract- Virtual machine placement to the PMs of the cloud datacenter is one of the important problems in cloud environment to provide better service to the cloud users. This research work proposed techniques to improve the performance of virtual machine placement in cloud environment. The proposed placement algorithm consisted of two main tasks. The first task optimizes the scheduling, while the second task enhances the operation of load balancing. The scheduling and load balancing is performed as a two-step process, where the first step groups resource requests into three categories, namely, high, low and medium resource requests queues and the second step performs scheduling and load balancing. The proposed VMP-LR, during non-rush hours, as the number of requests is minimum, uses an enhanced round robin method. During rush hours, in order to accommodate high resource requests, separate hybrid scheduling and load balancing algorithms are used to handle high, low and medium queues. The simulation results proved that the proposed algorithms are efficient in mapping VMs to PMs effectively in terms of cloud service response time and can save energy and increase resource utilization in a positive manner. Keywords- Virtual machine, Physical machine, VM Placement, VM Migration, Load Monitoring I. INTRODUCTION Cloud computing has gained popularity due to its various characteristics like cost economical and on- demand / pay as use services [1] that are independent of time and geographical locations. It is a general term used to describe a collection/group of integrated and networked hardware, software and Internet infrastructure. These platforms hide the complexity and details of the underlying infrastructure from users and applications by providing very simple graphical interface or API (Applications Programming Interface). Cloud computing technology allows developers and IT professionals with the ability to focus on significant matters and frees them from works like maintenance, procurement and capacity planning. As cloud computing has grown in popularity, several different models and deployment strategies have emerged to help meet specific needs of different users [2].Each type of cloud service and deployment method provides different levels of control, flexibility, and management. There are three fundamental Service models in Cloud computing, namely, Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) [3]. All these three services can be deployed in four different ways, namely, private, public, community and hybrid cloud [4]. Cloud computing systems consists of several elements that includes virtualization, distributed computing, service oriented architectures, broadband networks, browser as a platform, servers, SAN/NAS (Storage Area Network/Network Attached Storage) and free and open source software. Each of these elements performs tasks with the main goal of offering better services to users. Out of the various elements, this research work is focused on enhancing the task of virtualization in order to improve the working of the cloud computing system. Virtualization, a key concept of cloud computing, is the ability to run multiple operating systems on a single physical system and share the underlying hardware resources. It is the process by which one computer hosts the appearance of many computers [5]. Without virtualization, all machines require same power, emit same heat, need same physical space, setup cost, maintenance overhead, support overhead, cost per hardware etc. are directly proportional to the number of machines. Usage of virtualization increases the resource utilization by sharing physical resources among multiple users and applications. Sharing of resources provides multi-