# Energy-Aware Resource Scheduling with Fault-Tolerance in Edge Computing

Yanfen Xue, Guisheng Fan, Huiqun Yu, Huaiying Sun

► To cite this version:

Yanfen Xue, Guisheng Fan, Huiqun Yu, Huaiying Sun. Energy-Aware Resource Scheduling with Fault-Tolerance in Edge Computing. 16th IFIP International Conference on Network and Parallel Computing (NPC), Aug 2019, Hohhot, China. pp.327-332, 10.1007/978-3-030-30709-7_28. hal-03770567

HAL Id: hal-03770567

https://inria.hal.science/hal-03770567v1

Submitted on 6 Sep 2022

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
<figure><img src="image_2.png" /></figure>

ifip

International Federation for Information Processing

This document is the original author manuscript of a paper submitted to an IFIP
conference proceedings or other IFIP publication by Springer Nature. As such, there
may be some differences in the official published version of the paper. Such
differences, if any, are usually due to reformatting during preparation for publication or
minor corrections made by the author(s) during final proofreading of the publication
manuscript.
Energy-Aware Resource Scheduling with
Fault-Tolerance in Edge Computing

Yanfen Xue¹,², Guisheng Fan¹✉, Huiqun Yu¹, and Huaiying Sun¹

¹ Department of Computer Science and Engineering, East China University of Science and Technology, Shanghai, China
{gsfan,yhq}@ecust.edu.cn

² Shanghai Key Laboratory of Computer Software Evaluating and Testing, Shanghai, China

**Abstract.** Edge computing extends computation and storage resources to the edge of the network, which largely improve the performance problem of cloud computing incurred by the bandwidth limitation. And it still needs to address the challenges of energy and reliability. In this paper, we propose an energy-aware fault-tolerant resource scheduling algorithm to improve system reliability while minimizing the energy consumption. We allocate resources by reliability and energy-aware resource scheduling method for tasks firstly. Then, CPU temperature prediction and time between failures (TBF) prediction are used to trigger proactive fault tolerance mechanism (VM migration). The experimental results show that the reliability is greatly improved and energy consumption generated by VM migration is not very large compared to other methods.

**Keywords:** Edge computing · Fault tolerance · Energy consumption · Resource scheduling.

# 1 Introduction

Recently, edge computing is seen as an effective solution to the problem of more larger data, which has the advantages of shorter response time and service quality [1]. However, the problems of reliability are still urgent to be solved. The existing fault-tolerant methods can be divided into two categories: reactive and proactive methods. It is well known that reactive schemes will produce low average utilization of resources when the application behavior is highly dynamic. Instead of a reactive scheme, the proactive scheme that adopts a scheme of fault prediction [2-5] can effectively improve the utilization of resources. However, they only consider a single factor when predicting failures, which greatly affects the accuracy of the prediction results.

In this paper, we jointly consider the CPU temperature and time between failures (TBF) of the host to achieve fault prediction and propose an energy-aware fault-tolerant resource scheduling algorithm to improve the reliability while reducing the energy consumption. Specifically, we use the reliability and energy-aware resource scheduling [2] to allocate resources for tasks firstly. During the tasks execution, the fault tolerance mechanism (VM migration) will be triggered once the temperature reaches the upper threshold or the predicted failure time.

The rest of this paper is organized as follows. The system model is presented in Section 2 and follow is the resource scheduling algorithm. The simulation experiments are conducted in Section 4. Section 5 summarizes the paper.
## 2 Fault-Tolerance Resource Scheduling Model

As shown in Fig. 1, the system is mainly divided into two layers. The Users Layer is the producer and consumer of data. The Edge Cloud Layer is the data processing layer that consists of physical resources. Users submit their application to Edge Cloud layer. Then, the physical resources are allocated to tasks by resource management system(RSM). And in order to improve the reliability of system, the system can migrate the running VM from the deteriorating host to other host by RSM.

In this paper, we use the Bag-of-Task (BoT) application which consists of a set of independent tasks. The tasks in each BoT are defined as $T = \{task_i|1 \le i \le n\}$. $l_i$ is the length of the task $task_i$, which directly affects the execution time, $T_i^{ex}$. Each task $task_i$ is allocated to a virtual machine $vm_j \in VM$. Each virtual machine $vm_j$ run a set of tasks $T_j \in T$. In addition, $N = \{node_k|1 \le k \le x\}$ denotes the set of the physical hosts on the edge cloud.

<figure><img src="image_3.png" /><figcaption>Fig. 1. The System Architecture</figcaption></figure>

### 2.1 Failure Prediction Model

**CPU Temperature Prediction:** we use the simulation prediction function model of CPU temperature [3] as one of the methods to predict the host failure time as follows:

$$f(t|A, \omega, t_i, t_{i+1}) = \begin{cases} e^t & 0 \le t \le t_i \\ e^{t_i} & t_i \le t \le t_{i+1} \\ A \sin(\omega t - \omega t_{i+1}) + e^{t_i} & t_{i+1} \le t \le t_{i+2} \end{cases} \quad (1)$$

where $i$ is the positive integer set; $t_i$ is a fixed value calculated by $e^{t_i} = 35$; $e^{t_i}$ is the temperature when CPU is idle, which is always 35°C; $t_{i+1}$ is a random value; $t_{i+2}$ is calculated by $t_{i+2} = \pi/\omega + t_{i+1}$; $A$ is the amplitude (lower than 68°C); $\omega$ represents the duration of the CPU execution load.

**Time Between Failures Prediction:** In addition to the CPU temperature prediction, the method called exponential smoothing [2] is used to predict the TBF. Suppose there is a set of TBFs for the host $node_k$, $TBF_k = \{tbf_t|1 \le t \le n\}$.
**Algorithm 1 Reliability and Energy-aware Resource Scheduling Algorithm**

**Input:** Bag of Tasks, B
**Output:** The result of tasks allocation
1: Sorting R by the ratio of the mean time between failures to the power
2: **for** j = 1 to |V| **do**
3: &nbsp;&nbsp;&nbsp;&nbsp;get the number of CPU cores required of the VM, VM<sub>cores<sub>j</sub></sub>
4: &nbsp;&nbsp;&nbsp;&nbsp;**for** k = 1 to |R| **do**
5: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**if** R<sub>k</sub>.predictedToFail()! = true and Cores<sub>k</sub> ≥ VM<sub>cores<sub>j</sub></sub> **then**
6: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocate VM vm<sub>j</sub> to the host R<sub>k</sub>
7: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cores<sub>k</sub> = Cores<sub>k</sub> - VM<sub>cores<sub>j</sub></sub>
8: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**EndIF**
9: &nbsp;&nbsp;&nbsp;&nbsp;**EndFor**
10: **EndFor**

Then, the prediction corresponding to $tbf_{t+1}$ can be calculated as :

$$ (tbf_k)'_{t+1} = \begin{cases} \alpha \times (tbf_k)_t + ((1-\alpha) \times (tbf_k)'_t), & n > 1 \\ (tbf_k)'_t, & \text{otherwise} \end{cases} \quad (2) $$

where $(tbf_k)_t$ is the actual value of the TBF, $(tbf_k)'_t$ is the predicted value of the TBF at time t. $\alpha$ is the smoothing constant.

## 2.2 Energy Consumption Model

Let vm<sub>j</sub> be the VM running on node<sub>k</sub> with utilization u<sub>j</sub>. Then the energy consumption of the task task<sub>i</sub> running on vm<sub>j</sub> can be calculated as

$$ E_{ij} = (P_k(u_j) \times T_{ij}^{ex}) + E_{extra_{ij}} \quad (3) $$

where $E_{extra_{ij}}$ is the energy generated by VM migration, which can be calculated by the VM migration overhead model in [2], Similar to [6], $P_k(u_j)$ can be calculated by,

$$ P_k(u_j) = P_{min_k} + (P_{max_k} - P_{min_k}) \times u_j \quad (4) $$

where $P_{min}$ and $P_{max}$ is the power of node at minimum utilization and maximum utilization, respectively. The utilization u<sub>j</sub> of the VM vm<sub>j</sub> is the sum of the tasks utilization u<sub>i</sub> which is calculated by normalizing the task length l<sub>i</sub> with the maximum length l<sub>max</sub> in B.

# 3 Energy-Aware Fault-Tolerant Resource Scheduling Algorithm

Given the set of tasks BoT B and the resource configurations of data center. Algorithm 1 is used to configure resources for tasks. Firstly, the Best Fit Bin Packing algorithm [2] is used to allocate the tasks to the VM. Then, the reliability and energy-aware strategy is used to configure physical resources for VMs (lines 1-10). During task execution, once the temperature of the node reaches the upper threshold or the predicted fault time, the VM migration will be triggered. The
VM running on deteriorating node selects another node through Algorithm 1 to implement the migration.

## 4 Performance Evaluation

We do the simulation experiments by extending the simulator 'CloudSim' [3] and download the Grid5000 failure dataset from Fault Tracking Archive (FTA) [2] and select the clusters, G1/site1/c1, as the edge cloud data center. Parameter configuration model in [2] is used to match the configuration for each node and generation the BoTs workload which consist of tasks between 2000 and 3000. In order to evaluate the performance of the proposed algorithm(Tem/Tbf), we compare our method with other fault-tolerant strategies. Specifically, we denote 'NoFT' as the method with no fault tolerance mechanism. 'Restr', 'Pre-Tem', 'Pre-Tbf', 'Tem/Tbf' as the method with resubmission, CPU temperature, TBF, CPU temperature and TBF prediction as the fault tolerant strategy, respectively.

<figure><img src="image_4.png" /><figcaption>Fig. 2. The task completion rate under different fault-tolerant strategies</figcaption></figure>

<figure><img src="image_5.png" /><figcaption>Fig. 3. The energy consumption under different fault-tolerant strategies</figcaption></figure>
## 4.1 Experimental Results

Fig. 2 shows the task completion rate and the energy consumption is given in Fig. 3. We can see that the task completion rate and energy consumption is the highest when using Restr method. And among using fault prediction as the fault-tolerant strategy, the extra energy by using Tem/Tbf prediction is only 30Kwh higher than the other two cases. If using task completion rate to measure the reliability of the system, it is the most reliable by using Restr method, but the excessive energy which will greatly influence interests of operators. And when using Tem/Tbf method, the reliability is much higher than the other two proactive strategies and the increased energy is not large. Therefore, the method we proposed (Tem/Tbf) is more effective.

# 5 Conclusions

In this paper, we study how to improve the reliability of the edge cloud system while reducing energy consumption as much as possible. We use the reliability and energy-aware resource scheduling algorithm to allocate physical resources for tasks firstly. Then, CPU temperature prediction and time between failures prediction are used to achieve fault tolerance. Comparison with other fault-tolerant strategies, the method we proposed is more effective.

**Acknowledgements** This work was partially supported by the NSF of China under Grant nos. 61702334 and 61772200, Shanghai Pujiang Talent Program under Grant no. 17PJ1401900, Shanghai Municipal Natural Science Foundation under Grant nos. 17ZR1406900 and 17ZR1429700, Action Plan for Innovation on Science and Technology Projects of Shanghai under Grant no. 16511101000, Collaborative Innovation Foundation of Shanghai Institute of Technology under Grant no. XTCX2016-20, and Educational Research Fund of ECUST under Grant no. ZH1726108.

# References

1. M. Mukherjee, L. Shu, D. Wang, et al.: Survey of Fog Computing: Fundamental, Network Applications, and Research Challenges. IEEE Communications Surveys & Tutorials 20(3), 1826-1857 (2018).

2. Y. Sharma, W. Si, D. Sun, et al.: Failure-aware energy-efficient VM consolidation in cloud computing systems. Future Generation Computer Systems 94, 620-633 (2019).

3. J. Liu, S. Wang, A. Zhou, et al.: Using Proactive Fault-Tolerance Approach to Enhance Cloud Service Reliability. IEEE Transactions on Cloud Computing 6(4), 1191-1202 (2018).

4. T. J. Charity, G. C. Hua: Resource reliability using fault tolerance in cloud computing. In: 2016 2nd International Conference on Next Generation Computing Technologies (NGCT), pp. 65-71, Dehradun (2016).

5. J. Liu, S. Wang, A. Zhou, et al.: PFT-CCKP: A proactive fault tolerance mechanism for data center network. In: 2015 IEEE 23rd International Symposium on Quality of Service (IWQoS), pp. 79-80, Portland (2015).

6. A. Beloglazov, J. Abawajy, R. Buyya: Energy-aware resource allocation heuristics for efficient management of data centers for Cloud computing. Future Generation Computer Systems 28(5), 755-768 (2012).