# Optimal Asynchronous Dynamic Policies in Energy-Efficient Data Centers

^{1}

^{2}

^{3}

^{*}

## Abstract

**:**

## 1. Introduction

**(a) ERWS**, the weighted sum ${\beta}_{1}\mathbf{E}\left[R\right]+{\beta}_{2}\mathbf{E}\left[E\right]$ of the mean response time $\mathbf{E}\left[R\right]$ and the mean power cost $\mathbf{E}\left[E\right]$, where ${\beta}_{1},{\beta}_{2}\ge 0$ are weighted coefficients;

**(b) ERP**, the product $\mathbf{E}\left[R\right]\mathbf{E}\left[E\right]$ of the mean response time and the mean power cost. See Gandhi et al. [12] and Gandhi [10] for systematical research. Maccio and Down [14] generalized the

**ERP**to a more general performance cost function that considers the expected cycle rate. Gebrehiwot et al. [18] made some interesting generalizations of the

**ERP**and

**ERWS**by introducing multiple intermediate sleep states. Additionally, Gebrehiwot et al. [19,20] generalized the FCFS queue of the data center with multiple intermediate sleep states to the processor-sharing discipline and to the shortest remaining processing time (SRPT) discipline, respectively. In addition, Mitrani [21,22] provided another interesting method to discuss the data center of N identical servers that contain m reserves, while the idle or work of the servers is controlled by an up threshold U and a down threshold D. He established a new performance cost $C={c}_{1}\mathbf{E}\left[L\right]+{c}_{2}\mathbf{E}\left[S\right]$ and provided expressions for the average numbers $\mathbf{E}\left[L\right]$ and $\mathbf{E}\left[S\right]$, so that the performance cost C can be optimized with respect to the three key parameters m, U, and D.

## 2. Model Description

**Server groups:**The data center contains two server groups: Groups 1 and 2, each of which is also one interactive subsystem of the data center. Groups 1 and 2 have ${m}_{1}$ and ${m}_{2}$ servers, respectively. Servers in the same group are homogeneous, while those in different groups are heterogeneous. Note that Group 1 is viewed as a base-line group whose servers are always at the work state even if some of them are idle, the purpose of which is to guarantee a necessary service capacity in the data center. Hence, each server in Group 1 always works regardless of whether it has a job or not, so that it must consume an amount of energy at any time. In contrast, Group 2 is regarded as a reserved group whose servers may either work or sleep so that each of the ${m}_{2}$ servers can switch its state between work and sleep. If one server in Group 2 is at the sleep state, then it consumes a smaller amount of energy than the work state, as maintaining only the sleep state requires very little energy.

**A finite buffer:**The data center has a finite buffer of size ${m}_{3}$. Jobs must first enter the buffer, and then they are assigned to the groups (Group 1 is prior to Group 2) and subsequently to the servers. To guarantee that the float service capacity of Group 2 can be fully utilized when some jobs are taken from the buffer to Group 2, we assume that ${m}_{3}\ge {m}_{2}$, i.e., the capacity of the buffer must be no less than the server number of Group 2. Otherwise, if there are more jobs waiting in the buffer, the jobs transferred from Group 2 to the buffer will be lost.

**Arrival processes:**The arrivals of jobs at the data center are a Poisson process with arrival rate $\lambda $. If the buffer is full, then any arriving job has to be lost immediately. This leads to an opportunity cost ${C}_{5}$ per unit of time for each lost job due to the full buffer.

**Service processes:**The service times provided by each server in Groups 1 and 2 are i.i.d. and exponential with service rates ${\mu}_{1}$ and ${\mu}_{2}$, respectively. We assume that ${\mu}_{1}\ge {\mu}_{2},$ which makes the prior use of servers in Group 1. The service discipline of each server in the data center is First Come First Serve (FCFS). If a job finishes its service at a server, then it immediately leaves the system. At the same time, the data center can obtain a fixed service reward (or service price) $R$ from the served job.

**Switching between work and sleep:**To save energy, the servers in Group 2 can switch between the work and sleep states. On the one hand, if there are more jobs waiting in the buffer, then Group 2 sets up and turns on some sleeping servers. This process usually involves a setup cost ${C}_{3}^{\left(1\right)}.$ However, the setup time is very short as it directly begins from the sleep state and it can be ignored. On the other hand, if the number of jobs in Group 2 is smaller, then the working servers are switched to the sleep state, while the incomplete-service jobs are transferred to the buffer and served as the arriving ones.

**Transfer rules:**(1) To Group 1. Based on the prior use of servers in Group 1, if a server in Group 1 becomes idle and there is no job in the buffer, then an incomplete-service job (if it exists) in Group 2 must immediately be transferred to the idle server in Group 1. Additionally, the data center needs to pay a transferred cost ${C}_{4}$ to the transferred job.

**Power Consumption:**The power consumption rates ${P}_{1,W}$ and ${P}_{2,W}$ are for the work states of servers in Groups 1 and 2, respectively, while ${P}_{2,S}$ is only for the sleep state of a server in Group 2. Note that each server in Group 1 does not have the sleep state and it is clear that ${P}_{1,S}=0$. We assume that $0<{P}_{2,S}<$ ${P}_{2,W}$. There is no power consumption for keeping the jobs in the buffer. ${C}_{1}$ is the power consumption price per unit of the power consumption rate and per unit of time.

**Independence:**We assume that all the random variables in the data center defined above are independent.

**Remark**

**1.**

**Remark**

**2.**

## 3. Optimization Model Formulation

#### 3.1. A Policy-Based Block-Structured Continuous-Time Markov Process

**Remark**

**3.**

**Theorem**

**1.**

**Proof**

**of**

**Theorem**

**1.**

**Remark**

**4.**

#### 3.2. The Reward Function

**Case (a):**For ${n}_{1}=0,1,\dots ,{m}_{1}$ and ${n}_{2}={n}_{3}=0$, the profit rate is not affected by any policy, and we have

**Case (b):**For ${n}_{1}={m}_{1}$, ${n}_{2}=0$ and ${n}_{3}=1,2,\dots ,{m}_{3},$ the profit rate is affected by the setup policy ${\mathit{d}}^{W}$, we have

**Case (c):**For ${n}_{1}={m}_{1}$, ${n}_{2}=1,2,\dots ,{m}_{2}$ and ${n}_{3}=0,1,\dots ,{m}_{3}-{n}_{2}$, the profit rate is affected by the sleep policy ${\mathit{d}}^{S}$, we have

**Case (d):**For ${n}_{1}={m}_{1}$, ${n}_{2}={m}_{2}$ and ${n}_{3}={m}_{3}-{m}_{2}+1,{m}_{3}-{m}_{2}+2,\dots ,{m}_{3}$, the profit rate is not affected by any policy, we have

## 4. The Block-Structured Poisson Equation

**Theorem**

**2.**

**Proof**

**of**

**Theorem**

**2.**

## 5. Impact of the Service Price

#### 5.1. The Setup Policy

**Proposition**

**1.**

**Proof**

**of**

**Proposition**

**1.**

#### 5.2. The Sleep Policy

**Proposition**

**2.**

**Theorem**

**3.**

## 6. Monotonicity and Optimality

**Lemma**

**1.**

#### 6.1. The Service Price $R\ge {R}_{H}$

#### 6.1.1. The Setup Policy with $R\ge {R}_{H}^{W}$

**Theorem**

**4.**

**Proof**

**of**

**Theorem**

**4.**

**Theorem**

**5.**

**Proof**

**of**

**Theorem**

**5.**

#### 6.1.2. The Sleep Policy with $R\ge {R}_{H}^{S}$

**Theorem**

**6.**

**Proof**

**of**

**Theorem**

**6.**

**Theorem**

**7.**

#### 6.2. The Service Price $0\le R\le {R}_{L}$

#### 6.2.1. The Setup Policy with $0\le R\le {R}_{L}^{W}$

**Theorem**

**8.**

**Proof**

**of**

**Theorem**

**8.**

#### 6.2.2. The Sleep Policy with $0\le R\le {R}_{L}^{S}$

**Theorem**

**9.**

**Proof**

**of**

**Theorem**

**9.**

**Theorem**

**10.**

#### 6.3. The Service Price ${R}_{L}<R<{R}_{H}$

#### 6.3.1. The Setup Policy with ${R}_{L}^{W}<R<{R}_{H}^{W}$

**Theorem**

**11.**

**Proof**

**of**

**Theorem**

**11.**