## 4 Experimental Evaluation  
A modern data center is characterized by its heterogeniety, comprising various generations of PMs with differing configurations, particularly in processor speed and capacity. These servers are typically integrated into the data center incrementally, often replacing older legacy machines within the infrastructure [25]. Thus, we considered a heterogenous data center that contains two types of servers from different generations, as shown in Table 4.  
Five types of VMs are used, as shown in Table 5. Also, we set all VMs to have a single CPU core, and we assumed task independency in which there are no communications required among the VMs during the task execution. To assess the performance of VMP-ER, we utilized various metrics including the number of active PMs, total power draw, and resource waste. In our experiment, we used real data taken from the PlanetLab workload trace [26]. Java programming language was used to perform the experiments. Let us first consider a scenario in which two types of Lenovo servers, SD535 and SR850, are available within a data center for hosting VMs. For simplicity, let us assume that the following resources are currently available in these servers: one active SD535 server has 2604 MIPS and 2800 MB available, while one active SR850 server has 3724 MIPS and 1600 MB available. Now, let \(v_{1}\), \(v_{2}\), and \(v_{3}\) represent VMs awaiting placement within the data center. The resource requirements for each VM are as follows: \(v_{1}\)(1800 MIPS, 1100 MB), \(v_{2}\)(1600 MIPS, 1000 MB), and \(v_{3}\)(1100 MIPS, 520 MB). Through the analysis of various algorithms, it has been observed that some algorithms prefer SR850 servers, while others favor SD535 servers. For instance, LBMBP [9] and EEVMP [13] algorithms would opt to place \(v_{1}\) on a SR850 server due to its higher power efficiency factor compared to SD535. Subsequently, \(v_{2}\) would be placed on a SD535 server, since the available resources on the SR850 server are insufficient. For \(v_{3}\), EEVMP would activate a new physical machine to accommodate it, as neither SD535 nor SR850 has adequate resources. In contrast, our algorithm takes resource usage into account while identifying the most energy-efficient PM among the active PMs. This involves calculating the \((1-\mathbb{R}^{n}(h))\) term for both PMs using Equation (3), resulting in values of 0.942 for SD535 and 0.861 for SR850. Subsequently, the power efficiency factor (\(\mathbb{P}^{e}(h)\)) is computed using Equation (2), yielding values of 218.02 for SD535 and 237.99 for SR850. The difference in power consumption before and after placing \(v_{1}\) is then determined, resulting in a difference of 27.2 watts for SD535 and 28.8 watts for SR850. Assuming no SLA violations occur, the E-efficiency factor (\(\mathbb{E}^{e}(h)\)) for both servers is calculated to be 7.55 for SD535 and 7.14 for SR850, leading to the selection of SD535 to host \(v_{1}\). For \(v_{2}\) and \(v_{3}\), since only the SR850 server possesses sufficient CPU and RAM resources, both VMs are hosted on the SR850 server without the need to activate another physical machine. Consequently, our proposed algorithm utilizes fewer PMs, leading to increased \begin{table}
\begin{tabular}{c c c c} \hline \hline
**PM Type** & **CPU (MIPS)** & **RAM (MB)** & **Bandwidth (Gbps)** \\ \hline ThinkSystem SD535 V3 & 288,000 & 192,000 & 100 \\ ThinkSystem SR850 V3 & 456,000 & 512,000 & 100 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Configuration of PMs. \begin{table}
\begin{tabular}{c c c c} \hline \hline
**VM Type** & **CPU (MIPS)** & **RAM (MB)** & **Bandwidth (Gbps)** \\ \hline m5.large & 3100 & 8000 & 8 \\ m5.xlarge & 6200 & 16,000 & 8 \\ m5.2 xlarge & 12,400 & 32,000 & 10 \\ m5.4 xlarge & 24,800 & 64,000 & 12 \\ m5.8 xlarge & 49,600 & 128,000 & 20 \\ \hline \hline \end{tabular}
\end{table} 
Table 5: Configuration of VMs. energy savings for the data center. Additionally, resource wastage is minimized as PM resources are utilized properly.