# v-Mapper: An Application-Aware Resource Consolidation Scheme for Cloud Data Centers +
## Data Center Design and the v-Mapper System Model
### VM Placement and the Data Center Model
```
1:Input: Load DP on SN
2:Output: VM placement decision
3: Let CN denote Compute Node of a cloud network
4: Let \(t_{\text{CN},\text{i}}\) denote service response time of a CNi
5: Let least denote least response time of all CN
6: Let j denote the CN with least response time
7: Calculate \(t_{\text{R}}\) for each CN as
8:\(t_{\text{CN},\text{i}}=\sum_{\text{j}=1}^{n}t_{\text{R},\text{j}}\)
9: i \(\gets 0\)
10: j \(\gets 0\)
11: least \(\leftarrow\)\(t_{\text{CN},0}\)
12:while I! \(<\) n do
13:if least? \(t_{\text{CN},\text{i}}\) then
14: least \(\leftarrow\)\(t_{\text{CN},\text{i}}\)
15: j \(\leftarrow\) i
16:endif
17: i \(\leftarrow\) i + 1
18:endwhile
19: Place VM on CN j
20:Exit
```
**Algorithm 1** VM placement

### VM Workload Admission

VM resource provisioning plays a key role in ensuring that cloud providers adequately accomplish their obligations to customers, while maximizing the use of the underlying infrastructure. A capable workload admission scheme requires dynamically allocating each service request with the minimal resources that are needed for acceptable fulfillment of that service requirement, leaving the surplus resources free to deploy more VMs. The decision-making process for workload admission in v-Mapper takes place through a fuzzy comprehensive evaluation [25]. The process involves several steps, as described below. 1. First, we determine the factor and sub-factor weights for cloud services through an evaluation index (U). The factor and sub-factor weights are assigned through priority criteria of AHP. A simple case example is presented in [1] and can be used to measure functions influencing a cloud service's resource management concerns. 2. \"Not all clouds are created equal\"; therefore, we create a set of comments (V) to describe the evaluation of cloud services by using phrases such as \"Acceptable\", \"Constrained\", etc. These are determined based on [PERSON]'s 1 to 9 scale [26] to describe the preferences between alternatives as being either equally, moderately, strongly, very strongly or extremely preferred. 3. To provide a comprehensive assessment methodology, we create an evaluation matrix (R) from U to V, where each factor \(u_{i}\) (i \(\leq\) n) can be written as a fuzzy vector \(R_{i}\in\mu(V)\). Mathematically, this fuzzy relationship can be expressed as:\[\mathrm{R}=\left(\mathrm{r_{ij}}\right)_{\mathrm{n}\mathrm{x}\mathrm{m}}=\left( \begin{array}{cccc}\mathrm{r_{11}}&\mathrm{r_{12}}&\cdots&\mathrm{r_{1m}}\\ \mathrm{r_{21}}&\mathrm{r_{22}}&\cdots&\mathrm{r_{2m}}\\ \vdots&\vdots&\ddots&\vdots\\ \mathrm{r_{n1}}&\mathrm{r_{n2}}&\cdots&\mathrm{r_{nm}}\end{array} \right)\] (6) The evaluated result of Equation (6) should match the normalized conditions, because the sum of the weight of the vector is 1 (i.e., for i, \(\mathrm{r_{i1}}+\mathrm{r_{i2}}+\mathrm{r_{i3}}+\ldots\)..... + \(\mathrm{r_{im}}=1\)). 4. A factor assigned to a number in a computation system reflects its importance. The greater the weight of a factor is, the more importance it has in the system. We, therefore, determine the factor weight (FW) of each factor in the evaluation index (U) system. 5. We obtain the evaluation result (E) through the product of the factor weight (FW) and the evaluation matrix (R). This can be denoted as \(\mathrm{E}=\mathrm{FW(R)}=\mathrm{(E1,\,E2,\,E3,\,\ldots\), \(\mathrm{Em})}\). Finally, the evaluated weight now can be assigned to the respective application. In the next step, the individual cloud node workload is computed. By representing the cloud model as an arrangement of two interdependent row vectors, v-Mapper considers a cloud scenario where the number of tasks performed by the cloud is represented as a row vector \(\mathrm{a}=\left[\mathrm{a_{1},\,a_{2},\,a_{3},\,\ldots\,,\,a_{n}}\right]\) of a resource class \(\mathrm{c}\). Similarly, the resource occupation of individual tasks can be represented by another row vector \(\mathrm{v}=\left[\mathrm{v_{1},\,v_{2},\,v_{3},\,\ldots\,,\,v_{n}}\right]\).