Next Article in Journal
Machine Learning Assists IoT Localization: A Review of Current Challenges and Future Trends
Next Article in Special Issue
SCAP SigFox: A Scalable Communication Protocol for Low-Power Wide-Area IoT Networks
Previous Article in Journal
Virtual Commissioning of Distributed Systems in the Industrial Internet of Things
Previous Article in Special Issue
Linear Interval Approximation of Sensor Characteristics with Inflection Points
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Maximizing Heterogeneous Server Utilization with Limited Availability Times for Divisible Loads Scheduling on Networked Systems

1
School of Computer Science and Technology, Xidian University, Xi’an 710071, China
2
Department of Electrical and Computer Engineering, National University of Singapore, 4 Engineering Drive 3, Singapore 119077, Singapore
3
The 20th Research Institute of China Electronics Technology Group Corporation, Xi’an 710068, China
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(7), 3550; https://doi.org/10.3390/s23073550
Submission received: 24 January 2023 / Revised: 22 February 2023 / Accepted: 13 March 2023 / Published: 28 March 2023
(This article belongs to the Special Issue Adaptive Resource Allocation for Internet of Things and Networks)

Abstract

:
Most of the available divisible-load scheduling models assume that all servers in networked systems are idle before workloads arrive and that they can remain available online during workload computation. In fact, this assumption is not always valid. Different servers on networked systems may have heterogenous available times. If we ignore the availability constraints when dividing and distributing workloads among servers, some servers may not be able to start processing their assigned load fractions or deliver them on time. In view of this, we propose a new multi-installment scheduling model based on server availability time constraints. To solve this problem, we design an efficient heuristic algorithm consisting of a repair strategy and a local search strategy, by which an optimal load partitioning scheme is derived. The repair strategy guarantees time constraints, while the local search strategy achieves optimality. We evaluate the performance via rigorous simulation experiments and our results show that the proposed algorithm is suitable for solving large-scale scheduling problems employing heterogeneous servers with arbitrary available times. The proposed algorithm is shown to be superior to the existing algorithm in terms of achieving a shorter makespan of workloads.

1. Introduction

The convergence of information technology and economic society has led to the rapid growth of data. In turn, big data has also changed the traditional production mode and economic operation mechanism [1]. While the big data industry has become a new economic growth point, it has also brought a brand-new challenge: how to effectively and rapidly process large-scale data so as to efficiently mine the value of big data. The development of high-performance networked systems has brought a significant data processing problem [2]. However, how to reasonably allocate workloads on multiple servers directly determines both the resource utilization of networked systems and the processing efficiency of big data. Hence, finding an optimal task-scheduling strategy is the main focus and difficulty of studying networked systems and big data.
The Divisible-Load Theory (DLT) [3] is one of the task-scheduling theories developed under this background. The DLT assumes that a big data workload can be divided into load partitions of arbitrary sizes, without any data dependency or execution order between these load partitions, that is, each load partition can be independently transmitted and processed [4]. These divisions are distributed to multiple servers on the networked system through a reasonable task-scheduling strategy to complete parallel computing, thus shortening the makespan of the entire workload. The DLT has been successfully applied in various big data-related fields, such as image processing [5], dynamic voltage and frequency regulation [6], signature searching [7], data flow optimization [8], real-time video encoding [9], and other typical big data application problems.
It has been proved that divisible-load scheduling problems in networked systems are NP-hard [10]. If the scheduling model is too idealistic, the obtained solution of the model (i.e., load-partitioning scheme) may be difficult to apply to the actual networked systems. On the contrary, if the scheduling model is too detailed with all possible factors that affect the makespan, it will sharply increase the complexity of the problem to be solved, resulting in an inability to obtain an optimal solution to the model within a tolerable time. Therefore, when establishing a task-scheduling model for networked systems, it is necessary to balance the complexity of the model and the performance of the system.
To better adapt to different network topologies of networked systems, various task-scheduling models based on the DLT have been studied. For example, divisible-load scheduling models have been applied on the bus network [11], multi-level tree network [12], Gaussian, mesh, torus network [13], complete b-Ary tree network [14], Cloud platform [15], time-sensitive network [16], wireless sensor networks [17], Edge platform [18], Fog platform [19], and so on.
In order to make task-scheduling models closer to the real distributed platform environment, researchers proposed considerable divisible-load scheduling models with all sorts of constraints. For example, the authors in [20] introduced the concept of startup overheads in the scheduling model, and studied the unneglectable impact of startup overheads on the makespan of workloads. The work in [21] took limited memory buffers into consideration. It assumed that the amount of memory available on the remote servers is too small to hold the whole workload at once. Hence, the workload must be distributed into multi-installments. The authors in [22] studied divisible-load scheduling among multi-task servers whose processing speeds and channel speeds are time-varying. Two recursive algorithms were provided to solve this problem when the arrival and departure times of the background workloads are known a priori and an iterative algorithm was provided to solve the case where such times are not known. The work in [23] focused on heterogeneous networked systems with hierarchical memory. It found that different levels of memory hierarchy have different time and energy efficiencies. Core memory may be too small to hold the whole workload to be processed, while computations using external storage are expensive in terms of time and energy. In order to avoid the costs of processing the workload in the external memory, it allows the workload to be distributed into multi-installments. The authors in [24] studied the communication and computation rate-cheating problems as in a real distributed environment, wherein servers may cheat users by not reporting their true computation or communication rates. The work in [25] addressed failures on servers and takes checkout start-up overhead and checkout time consumption into account. The authors in [26] proposed a novel architecture of a multi-cloud system that can satisfy the complex requirements of users on computing resources and network topology, as well as guarantee a quality of services. Based on this architecture, they designed a dynamic scheduling strategy that integrates the DLT and node ready-time prediction techniques to achieve high performance. The work in [27] studied a scheduling problem with divisible loads and subcontracting options with three linear subcontracting prices. The objective is to minimize the sum of the total weighted tardiness and subcontracting costs. The article in [28] is concerned with the investigation of adapting a user’s preference policies for scheduling real-time divisible loads in a cloud computing environment.
However, the above scheduling models all assume that servers in the system remain idle at the beginning of workload division and assignment and that servers involved in workload computation are able to stay online forever. That is to say, existing studies do not consider the available time of each server. In the actual parallel and networked systems, on the one hand, servers may still be busy computing their previous workload assignment when a new workload arrives. On the other hand, the platform cannot ensure that all servers remain online during workload computation. Servers may become offline or even be shut down before completing their assignment due to network attacks or communication interruptions. In addition, the servers’ continuous operation may cause their temperature to rise due to electric heating, which may endanger the service life of server components; therefore, servers require to be offline periodically to cool down. Meanwhile, servers may also generate available-time fragments due to the user’s advance reservation. If these time fragments are not utilized properly, the overall resource utilization of the servers will be reduced to some extent. On the contrary, if one prefers to make full use of these fragments, then the constraints of server online times and offline times must be considered when allocating load partitions on servers.
From the above analysis, we can see that servers may have heterogeneous available and unavailable time periods for various reasons. Here, available time corresponds to the time period between the server’s release time and the server’s offline time. If we inadvertently assign tasks to servers without considering their availability constraints, all the unfinished workload partitions need to be reassigned to other available servers, resulting in an inefficient time schedule. Hence, limited server available times must be considered when scheduling workloads on a networked system. However, it has been proved that even without server availability constraints, the divisible-load scheduling problem under networked systems is also an NP-hard problem [29].
As regards the server release times alone, several load-scheduling strategies were proposed. For example, the work in [30] addressed the problem of scheduling a computationally intensive divisible load with server release times and finite size buffer capacity constraints in bus networks. The work in [31] addressed divisible-load scheduling with server startup overheads and release times, while a new divisible-load scheduling model was proposed in [32], considering server distribution sequence and release times. The authors in [33] investigated the problem of scheduling multiple divisible loads in networked systems with arbitrary server release times and heterogeneous processing requirements of different workloads. In order to obtain a global optimal load scheduling strategy on tree networks, an exhaustive search algorithm was proposed in [34], but as expected, exhaustive algorithms are time-consuming, especially when networks become large. To make it more time-efficient, the work in [35] proposed a genetic algorithm. In addition to the research based on server release times, the authors in [36] studied the impact of both server online times and offline times, that is, server available times, on the process of divisible-load scheduling.
However, the above studies are all based on single-installment scheduling, which has been proven to be not as efficient as multi-installment scheduling in minimizing the makespan of workloads [10]. In single-installment scheduling models, the master divides large-scale workloads into load partitions with the same number as the slave servers and it only assigns load partitions to each slave server once. By contrast, in multi-installment scheduling models, the master divides workloads into load partitions that are several times the number of slave servers and assigns load partitions to each server in multiple rounds. It is thus clear that, compared with single-installment scheduling, multi-installment scheduling can reduce the waiting time of servers, so it can achieve a shorter makespan and higher utilization of platform resources.
In summary, on the one hand, it is known that multi-installment scheduling is superior to single-installment scheduling in terms of time efficiency; on the other hand, limited server available times should be considered when scheduling workloads on a networked system, but in the existing research, available time constraints have only been studied in single-installment scheduling models. Based on this background, in this paper, firstly, we explicitly consider server available times in our scheduling model, which brings the work closer to reality. Secondly, we design a multi-installment scheduling strategy for this scheduling problem at hand.
The remainder of this paper is organized as follows. Section 2 firstly gives a mathematical description of the divisible-load scheduling problem on networked systems with arbitrary sever available times, followed by the proposed multi-installment scheduling model. With this model, we accordingly design a heuristic algorithm in Section 3 to obtain an optimal load-partitioning scheme, which will be evaluated through experiments in Section 4. In the last section, the conclusions are shared.

2. Multi-Installment Scheduling Model with Server Available Times

Let us consider n + 1 servers connected in a single-level tree topology, as illustrated in Figure 1, where p 0 represents the master and p 1 , p 2 , , p n denotes slave servers. The master p 0 is different from the master of the entire distributed system, but represents a server that stores the workload waiting to be processed and it does not participate in the workload computation but is only responsible for splitting the workload and distributing load partitions to slave servers in multiple installments, while slave servers are responsible for workload computation. The master is connected to each slave server through communication links, denoted as l 1 , l 2 , , l n . When all servers have completed their assigned load partitions, the entire workload is considered to have been completed. The time required from the first server accepting its assignment to the last server finishing load computation is called the makespan of the entire workload. Evidently, the shorter the makespan is, the better. That is, the goal of optimization is to pursue the shortest makespan for the entire workload. For ease of reading, the most commonly used notations in this paper are listed in Table 1.
The entire workload W to be processed arrives at the master at time t = 0 . First of all, before load transmission, it is necessary to establish a communication link between the master and each server, and experience a series of communication connections such as three handshakes. Due to the fact this period of time is relatively fixed, it can be regarded as a constant, which is called communication startup overhead, denoted as e i for link l i . Let g i be the time required for link l i to transmit unit size of workload. Hence, it takes time e i + x g i for link l i to transmit a workload with size x . After receiving load partitions from the master, each server needs to start specific components or programs needed for load computation. This startup time can be regarded as a constant, called the computation startup overhead, denoted as f i for server p i . Let w i be the time required for server p i to finish computing the unit size of the workload. Hence, it takes time f i + x w i for server p i to complete a workload with size x . The communication mode considered in this paper is a non-blocking mode. Hence, each server starts computing the moment it receives its assignment.
Figure 2 shows one possible Gantt chart for task-scheduling process on networked systems with arbitrary server available times. As can be seen, each server has different release and offline times, denoted as T i o n and T i o f f , respectively. The scheduling process consists of m installments, in which the first m 1 installments are denoted as internal installments. The last installment differs from the others since it ensures that all servers complete workload computation before their offline times and finish computing simultaneously as much as possible. If we do not consider server available times, to achieve the goal of minimizing the makespan, all servers are required to finish load computation at the same time. Otherwise, we can redistribute the partial load assigned to the server that finishes computing later to the server that completes first, thus reducing the makespan of the entire workload. This is referred to as the optimality principle in the DLT [14]. However, under the constraint that servers have heterogeneous offline times, the optimality principle is no longer applicable. In the last installment, the redundant part of the load assigned on the servers that do not meet the offline time constraint should be rescheduled to other servers that meet the time constraint. Moreover, for those servers that meet the offline time constraint, their load completion times should be as identical as possible to minimize the makespan.
The total size of the workload that all servers are expected to complete in each installment is V = W / m . The master assigns to server P i the loads α i and β i in every internal installment and the last installment. The master transmits load partitions to one server at a time, that is, each server starts to receive its load partition after the master has finished sending divisions to its previous server. It is worth noting that each server must wait until its online time arrives to start receiving and computing its assigned load partitions, that is, the start time of each server is equal to the greater part of its online time and the time its previous server finished receiving its assignment. Similarly, each server must complete load computation in the last installment before its offline time arrives. Therefore, the makespan of the entire workload depends on the server that completes load computation the latest.
The goal of this paper is to find an optimal, if not a sub-optimal, load partitioning scheme that minimizes the makespan of the entire workload under the constraints of server available times.

2.1. Internal Installments

In order to ensure that each server has no time interval between any two adjacent internal installments, all servers must take the exact same time to process their assigned load fractions. Thus, we have
f 1 + α 1 w 1 = f 2 + α 2 w 2 = = f n + α n w n
By Equation (1), α i can be expressed by α 1 as
α i = α 1 w 1 + f 1 f i w i = w 1 w i α 1 + f 1 f i w i , i = 2 , , n .
Let us denote
Δ i = w 1 w i   and   Φ i = f 1 f i w i .
Substituting Equation (3) into (2) yields
α i = Δ i α 1 + Φ i , i = 1 , 2 , , n .
Substituting Equation (4) into i = 1 n α i = V , we have
α 1 = V i = 2 n Φ i 1 + i = 2 n Δ i .
Let Φ 1 = 0 and Δ 1 = 1 , we can simplify Equation (5) as
α 1 = V i = 1 n Φ i i = 1 n Δ i .
Then, we obtain an optimal load partition for the internal installments as follows:
α 1 = V i = 1 n Φ i i = 1 n Δ i , α i = Δ i α 1 + Φ i , i = 1 , 2 , , n .
Although the entire workload arrives at the master at time t = 0 , the scheduling process starts when the first server p 1 releases from its previous load computation at time T 1 o n . If we neglect the online time constraint, the theoretical start time T i s t a r t of server p i is as follows:
T i s t a r t = T 1 o n , T i s t a r t = T 1 s t a r t + j = 1 i 1 ( e j + α j g j ) , i = 2 , , n .
Due to the online time constraint, servers may not be able to participate through the whole scheduling process. Hence, we need to identify which number of installments u i server p i can participate in the earliest as long as it meets the online time constraint.
u 1 = 1 , u i = T i o n T i s t a r t f i + α i w i , i = 2 , , n .
In theory, the total amount of workload that should be completed by all internal installments is ( m 1 ) V . However, if there exists u i 1 with i = 2 , , n , then server p i will miss several internal installments, resulting in the amount of workload ( m 1 ) V not being completed entirely. The unfinished part of workload should be scheduled and completed in the last installment.

2.2. The Last Installment

The size of the workload waiting to be processed in the last installment can be written as
V l a s t = V + i = 2 n ( u i 1 ) α i .
Here, we shall first derive an optimal load partition for the last installment without considering the offline time constraint. According to the optimal principle in the DLT, all servers should finish computing at the same time, so we have
f i + β i w i = β i g i + e i + 1 + f i + 1 + β i + 1 w i + 1 , i = 1 , 2 , , n - 1 .
From Equation (11), β i + 1 can be expressed by β i
β i + 1 = w i g i w i + 1 β i + f i f i + 1 e i + 1 w i + 1 , i = 2 , , n .
Let us define two new variables below for convenience.
λ i + 1 = w i g i w i + 1   and   θ i + 1 = f i f i + 1 e i + 1 w i + 1 , i = 1 , , n .
Simplifying Equation (12) by Equation (13), we have
β i + 1 = λ i + 1 β i + θ i + 1 , i = 1 , , n 1 .
By recursively calculating Equation (14) by the iterative method, one can obtain the expression of β i + 1 by β 1
β i + 1 = Ψ i β 1 + Ω i , i = 1 , 2 , , n ,
where
Ψ i = j = 2 i λ j   and   Ω i = j = 2 i ( θ j k = j + 1 i λ j ) , i = 1 , 2 , , n .
From the previous analysis, we know that the total amount of workload that all servers need to complete in the last scheduling is V l a s t , that is,
i = 1 n β i = V l a s t .
Substituting Equation (15) into Equation (17), one can obtain an optimal load partition for the last installment without taking the offline time constraint into consideration.
β 1 = V l a s t i = 2 n Ω i 1 + i = 2 n Ψ i , β i = Ψ i β 1 + Ω i , i = 2 , , n .
Likewise, let Ψ 1 = 1 and Ω 1 = 0 . Then, Equation (18) can be simplified as
β 1 = V l a s t i = 1 n Ω i i = 1 n Ψ i , β i = Ψ i β 1 + Ω i , i = 1 , , n .
So far, without considering the offline time constraint, we have derived an optimal load partition for the last installment. However, since servers have heterogeneous offline times, it is necessary to adjust the value of β i , so that the makespan of the entire workload could be the shortest under available time constraints.

2.3. Scheduling Model

Based on the actual load partitions for the last installment, the completion time T i e n d of server p i can be written as follows:
T i e n d = T 1 o n + e 1 + ( m 1 ) ( f 1 + α 1 w 1 ) + f 1 + β 1 w 1 , T i e n d = T 1 e n d + j = 1 i 1 ( e j + β j g j ) + e i + f i + β i w i , i = 2 , , n
Therefore, the makespan the entire workload is
T ( A , B , U ) = min max 1 i n T i e n d
where A = ( α 1 , α 2 , , α n ) , B = ( β 1 , β 2 , , β n ) and U = ( u 1 , u 2 , , u n ) .
Here, we establish a new scheduling model aiming at a minimum makespan T under the available time constraints on networked systems.
min B T ( A , B , U ) = min B max 1 i n T i e n d
subject to
(a)
0 β i < V l a s t , i = 1 n β i = V l a s t , i = 1 , 2 , , n .
(b)
T i e n d T i o f f , i = 1 , 2 , , n .
where
(1)
T 1 e n d = T 1 o n + e 1 + ( m 1 ) ( f 1 + α 1 w 1 ) + f 1 + β 1 w 1 , T i e n d = T 1 e n d + j = 1 i 1 ( e j + β j g j ) + e i + f i + β i w i , i = 2 , , n .
(2)
α 1 = V i = 1 n Φ i i = 1 n Δ i , α i = Δ i α 1 + Φ i , i = 1 , 2 , , n .
(3)
V = W m , Δ i = w 1 w i , Φ i = e 1 + f 1 e i f i w i , V l a s t = V + i = 2 n ( u i 1 ) α i .
(4)
u 1 = 1 , u i = T i o n T i s t a r t f i + α i w i , i = 2 , , n .
(5)
T 1 s t a r t = T 1 o n , T i s t a r t = T 1 s t a r t + j = 1 i 1 ( e j + α j g j ) , i = 2 , , n .
The optimization goal of the above model is to minimize the makespan of the entire workload. Although makespan T is a function of A = ( α 1 , α 2 , , α n ) , B = ( β 1 , β 2 , , β n ) , and U = ( u 1 , u 2 , , u n ) according to Equation (22), we can obtain an optimal solution to A and U in Section 2.1, so only one set of variables, that is B , is involved in the proposed model. Moreover, this model contains two constraints. Constraint (a) means that every load partition assigned to severs in the last installment cannot be negative and that the total amount of workload completed by all servers in the last installment must be equal to V l a s t . Constraint (b) indicates that all servers must meet their corresponding offline time constraint. The reason for which the online time constraint is not reflected in the proposed model is that in Section 2.1 we have already taken online times into full consideration when obtaining an optimal to A and U .

3. Heuristic Scheduling Algorithm

In this section, a heuristic algorithm is designed to solve our proposed optimization model. It includes two strategies: a repair strategy and a local search strategy. The repair strategy is responsible for ensuring that all servers finish their load computation before their offline times, while the local search strategy ensures that servers can finish computing at the same time as much as possible (on the premise of satisfying available time constraints), so as to minimize the makespan of the entire workload.

3.1. Repair Strategy

The idea of the repair strategy is searching from p 1 to p n in turn to find the server that does not meet time constraints. If the completion time T i e n d of server p i is greater than its offline time T i o f f , this means that the master has allocated too great an amount of assignment to this server. The extra amount of load will be assigned to the next server, that is, p i + 1 . In this way, we only need to verify all servers once from beginning to end, and the time constraints of the proposed model will be satisfied after one round of repairment. In the worst case, all servers need to be fixed once.
Let us suppose there exists server p i that T i e n d > T i o f f . Let Δ K i be the amount of load that needs to be assigned to server p i + 1 . We have
Δ K i = T i e n d T i o f f w i .
We need to reschedule Δ K i from server p i to server p i + 1 . Let β i * and β i + 1 * , respectively, be the updated amounts of load that is scheduled on servers p i and p i + 1 after repairing.
β i * = β i Δ K i   and   β i + 1 * = β i + 1 + Δ K i .
Since load partitions assigned on servers p i and p i + 1 have been adjusted, their completion times are altered correspondingly, as follows.
T i e n d * = T i o f f   and   T i + 1 e n d * = T i + 1 e n d + ( w i + 1 g i ) Δ K i .
It is worth noting that since the master allocates less amount of load to server p i in the last installment, its transmission time becomes shorter. Conversely, as server p i + 1 has to undertake more load, its transmission takes a longer time. Due to the heterogeneity of the networked systems, the reduced transmission time of server p i is not necessarily equal to the increased transmission time of server p i + 1 . This will cause the completion time T j e n d of server p j with i + 1 < j n that schedules after p i + 1 changes as follows.
T j e n d * = T j e n d + ( g i + 1 g i ) Δ K i ,   i + 1 < j n .
So far, the repair operation of server p i is completed. The repairment will continue to the next server p i + 1 . If p i + 1 cannot complete its assignment before it reaches its offline time, we need to reschedule its overloaded partition to server p i + 2 and recalculate the completion time of all the servers behind p i + 2 . Repeat this process until all servers have gone through the repair operation once.
Figure 3 shows a case of multi-installment scheduling before applying the repair strategy. As can be seen from this figure, in the last installment, the completion time of server p 1 has exceeded its offline time. Hence, we have to reschedule the extra part of the load assigned on p 1 to server p 2 , as illustrated in Figure 4. After being repaired, server p 1 finishes computing when its offline time arrives. Additionally, one can observe from Figure 4 that although server p 2 has been added with more load to process, it does not violate its offline time constraint. Therefore, we do not need to apply the repair operation on server p 2 .

3.2. Local Search Strategy

After applying the repair strategy, all servers meet their offline time constraints, but the load partitioning scheme in the last installment at this time may not be an optimal solution to our proposed model. In this section, we shall put forward a local search strategy to enable as many servers as possible to finish computing at the same time while satisfying time constraints, thus minimizing the makespan of the entire workload.
The Idea of the local search strategy is to find the servers that finish computing the earliest and the latest, that is, to find the two servers with the largest gap in their completion times, and then balance the amount of load assigned on them to reduce the makespan. It is worth noting that the completion time of the earliest server must not have reached its offline time, because we need to allocate more load on it without violating its time constraint.
Let p e a r l y be the server that finishes computing the earliest and p l a t e r be the latest. After local search, their competition times turn into the same, that is T e a r l y e n d * = T l a t e r e n d * . Let us suppose that the amount of load that needs to be rescheduled from p l a t e r to p e a r l y is Δ V . We shall discuss the value of Δ V in two scenarios.
The first case is when e a r l y < l a t e r , which means that in the distribution sequence of the servers, server p e a r l y is in front of server p l a t e r . Then, the following equations hold.
T e a r l y e n d * T e a r l y e n d = w e a r l y Δ V , T l a t e r e n d T l a t e r e n d * = w l a t e r Δ V g e a r l y Δ V , T e a r l y e n d * = T l a t e r e n d * .
From Equation (27), one can derive the value of Δ V as
Δ V = T l a t e r e n d T e a r l y e n d w e a r l y + w l a t e r g e a r l y .
To avoid violating the offline time constraint, Δ V should be confined as follows.
Δ V = min Δ V , T e a r l y o f f T e a r l y e n d w e a r l y .
It is worth noting that since we allocate more load on server p e a r l y , it needs more communication time to complete load transmission, which will definitely affect all subsequent servers behind p e a r l y in the distribution sequence and will increase their completion times. Similarly, we assign less load on server p l a t e r , so its communication time becomes shorter, which will reduce the completion times of all subsequent servers behind p l a t e r . Therefore, those servers lying between p e a r l y and p l a t e r in the distribution sequence are only affected by p e a r l y . Their completion times will be changed into the following values.
T i e n d * = T i e n d + g e a r l y Δ V , e a r l y < i < l a t e r .
The servers behind p l a t e r in the distribution sequence are affected by both p e a r l y and p l a t e r . Their completion times will be altered as follows.
T i e n d * = T i e n d + g e a r l y g l a t e r Δ V , l a t e r < i n .
Observing Equations (30) and (31), we can come to the conclusion that all servers behind p e a r l y are affected. After local search, there may exist servers that violate time constraints, and thus we still need to apply the repair strategy on them.
Figure 5 shows an example of the case when e a r l y < l a t e r . As can be seen from this figure, server p 1 finishes computing at its offline time. Although it has the shortest completion time, server p 1 is not involved in the local search operation since it cannot be assigned more load. Except for p 1 , server p 2 finishes computing the earliest while server p 4 finishes the latest. The load partitions allocated on them should be adjusted according to Equation (29). After load adjustment, the completion time of server p 3 will be enlarged, which can be updated by Equation (30). Meanwhile, the completion time of server p 5 will be affected by both servers p 2 and p 4 , which can be calculated by Equation (31). Servers p 3 and p 5 may violate the offline time constraint, so they need to be verified or even repaired by the repair strategy.
The other case is when e a r l y > l a t e r , which means that server p e a r l y is behind server p l a t e r in the distribution sequence. Then, the following equations hold.
T e a r l y e n d * T e a r l y e n d = w e a r l y Δ V g l a t e r Δ V , T l a t e r e n d T l a t e r e n d * = w l a t e r Δ V , T e a r l y e n d * = T l a t e r e n d * .
From Equation (32), one can derive the value of Δ V as follows.
Δ V = T l a t e r e n d T e a r l y e n d w e a r l y + w l a t e r g l a t e r .
Similarly, to avoid violating the offline time constraint, Δ V should be confined according to Equation (29). It is worth noting that since we allocate more load on server p e a r l y , it needs more communication time to complete load transmission, which will definitely affect all subsequent servers behind p e a r l y in the distribution sequence and will increase their completion times. Similarly, we assign less load on server p l a t e r , so its communication time becomes shorter, which will reduce the completion times of all subsequent servers behind p l a t e r .
Those servers lying between p l a t e r and p e a r l y in the distribution sequence are only affected by p l a t e r . Their completion times will be changed into the following values.
T i e n d * = T i e n d g l a t e r Δ V , l a t e r < i < e a r l y .
Those servers behind p e a r l y in the distribution sequence are affected by both p e a r l y and p l a t e r . Their completion times will be altered as follows.
T i e n d * = T i e n d + g e a r l y Δ V g l a t e r Δ V , e a r l y < i n .
Different from the first case, when e a r l y > l a t e r , the completion times of the servers between p l a t e r and p e a r l y are reduced after local search, as can be observed from Equation (34). Hence, they keep obeying the offline time constraint and need not to be repaired. By contrast, according to Equation (35), those servers behind p e a r l y in the distribution sequence may violate time constraints, and thus they need to be verified or even repaired.
Let β e a r l y * and β l a t e r * , respectively, be the updated amounts of load rescheduled on servers p e a r l y and p l a t e r after local search. Then, we have
β e a r l y * = β e a r l y + Δ V   and   β l a t e r * = β l a t e r Δ V .
Figure 6 shows an example of the case when e a r l y > l a t e r . Similar to Figure 5, except for server p 1 , which is not involved in the local search operation, server p 2 finishes computing the latest while server p 4 finishes the earliest. The load partitions allocated to them should be adjusted according to Equation (29). After load adjustment, the completion time of server p 3 will be reduced, which can be updated by Equation (34). Meanwhile, the completion time of server p 5 will be affected by both servers p 2 and p 4 , which can be calculated by Equation (35). Different from the case illustrated in Figure 5, only server p 5 needs to be verified or even repaired by the repair strategy.

3.3. Heuristic Algorithm

The proposed model only involves one set of variables, that is, the load partitioning scheme B = ( β 1 , β 2 , , β n ) for the last installment. To solve this model, we shall put forward in this section a heuristic algorithm, whose framework is given in Algorithm 1.
Algorithm 1. Heuristic Scheduling Algorithm
Input: Workload size W , number m of installments, parameters of servers, including o i , g i , w i , f i , o n i , o f f i with i = 1 , 2 , , n .
Output: An optimal load-partitioning scheme ( A , B , U ) , where A = ( α 1 , α 2 , , α n ) , B = ( β 1 , β 2 , , β n ) and U = ( u 1 , u 2 , , u n ) .
Step 1: Obtain an optimal load partition A for internal installments by Equation (7).
Step 2: According to Equation (9), obtain the value of U , indicating which number of installments each server starts to participate in the internal installments.
Step 3: Use Equation (10) to calculate out the amount of load V l a s t that servers need to undertake in the last installment.
Step 4: Initialize load partition B for the last installment by Equation (19).
Step 5: Apply repair strategy to update B according to Equation (24).
Step 6: Repeat applying local search strategy to update B according to Equation (36) until the completion time of every server is as identical as possible on the premise of meeting its offline time constraint.
Algorithm 1 first finds an optimal solution to the internal installments through steps 1 and 2. With the solutions of A = ( α 1 , α 2 , , α n ) and U = ( u 1 , u 2 , , u n ) , Algorithm 1 initializes B via steps 3 and 4. In order to meet the time constraints of the proposed model, Algorithm 1 repairs the load partitioning scheme through step 5, and then finds an optimal solution to B through step 6. Algorithm 1 stops when the competition time gap between any two servers who finish computing before their offline times is lesser than a small threshold.

4. Experiments and Analysis

In this section, we shall compare the model and algorithm proposed in this paper (denoted as MIS) with the existing single-installment scheduling model and algorithm based on server available times [36] (abbreviated as SIS), to prove that the proposed model and algorithm can achieve a shorter makespan.
In the following experiments, the total number of servers is set to be 15, that is, n = 15 . Table 2 lists the parameters of the heterogenous networked system, where e i is the communication startup overhead of server p i , g i is the communication time of link l i to transmit the unit size of workload, f i is the computation startup overhead of server p i , w i is the computation time of server p i to finish computing unit size of workload, T i o n is the online time of server p i while T i o f f is its offline time. These values listed in Table 2 are commonly used in the DLT field [10].
Table 3 gives the makespan obtained by the two algorithms SIS and MIS with different workloads. In order to visually demonstrate their difference, Figure 7 shows the curve of makespan vs. workload size.
As can be seen from Figure 7, first of all, no matter how great the workload is, the makespan obtained by the proposed algorithm MIS (represented in red) is always less than that obtained by the compared algorithm SIS (marked in blue). That is to say, our proposed heuristic algorithm can obtain a shorter makespan of workloads and improve the workload processing efficiency when addressing scheduling problems employing heterogeneous servers with arbitrary available times.
Secondly, one can observe from Figure 7 that with an increase in the workload size, the makespan obtained by either of the two algorithms SIS and MIS becomes larger and larger. Moreover, it is worth noting that the time gap between the two algorithms is greatly increased, which indicates that the proposed algorithm has superior performance in solving large-scale divisible-load scheduling problems in the era of big data.

5. Conclusions

The goal of this paper is to obtain a minimized makespan for a large-scale workload processed on networked systems with heterogeneous servers that have arbitrary available times. The goal was successfully achieved via three distinct efforts. First, we proposed a new multi-installment scheduling model with server availability constraints. The scheduling process was divided into two main parts: internal installments and the last installment, so as to simplify the scheduling process. Second, taking full advantage of server release times, we obtained an optimal load-partitioning scheme for the internal installments through strict mathematical derivation. Third, we put forward an effective heuristic algorithm to obtain an optimal load-partitioning scheme for the last installment. The proposed heuristic algorithm is effective owing to the two well-designed optimization strategies contained—a repair strategy and a local search strategy. The repair strategy ensures that all servers complete their load computation before offline times, thus satisfying the available time constraints. The local search strategy guarantees that servers can finish computing at the same time as much as possible on the premise of satisfying available time constraints, so as to minimize the makespan of the entire workload. Finally, the experimental results show that, compared with the existing scheduling algorithm, the proposed one is superior in obtaining a shorter makespan, especially when addressing large-scale scheduling problems in the era of big data. Extensions to this work can consider server outages together with available times, and this is expected to be an open-ended problem at this juncture.

Author Contributions

Conceptualization, X.W. and B.V.; methodology, X.W. and B.V.; software, X.S.; data curation, K.Z.; writing—original draft preparation, X.W.; writing—review and editing, B.V.; funding acquisition, X.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (No. U22A2098, No. 62172457, No. 62272367), the Key Research and Development Program of Shaanxi Province (No. 2022ZDLGY01-06 and No. 2022ZDLGY01-01), and Key Laboratory of Cognitive Radio and Information Processing, Ministry of Education, Guilin University of Electronic Technology (CRKL220206).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Cheraghalipour, A.; Paydar, M.M.; Hajiaghaei-Keshteli, M. An integrated approach for collection center selection in reverse logistics. Int. J. Eng. 2017, 30, 1005–1016. [Google Scholar]
  2. Daneshdoost, F.; Hajiaghaei-Keshteli, M.; Sahin, R.; Niroomand, S. Tabu search based hybrid meta-heuristic approaches for schedule-based production cost minimization problem for the case of cable manufacturing systems. Informatica 2022, 33, 499–522. [Google Scholar] [CrossRef]
  3. Yang, C.; Fei, W.; Robertazzi, T. Integrating Amdahl-like Laws and Divisible Load Theory. Parallel Process. Lett. 2021, 31, 2150008. [Google Scholar]
  4. Zhang, W.; Bai, E.; He, H.; Cheng, A.M. Solving energy-aware real-time tasks scheduling problem with shuffled frog leaping algorithm on heterogeneous platforms. Sensors 2015, 15, 13778–13804. [Google Scholar] [CrossRef] [Green Version]
  5. Nikbakht Aali, S.; Bagherzadeh, N. Divisible load scheduling of image processing applications on the heterogeneous star and tree networks using a new genetic algorithm. Concurr. Comput. Pract. Exp. 2020, 32, e5498. [Google Scholar] [CrossRef] [Green Version]
  6. Yu, H.; Ha, Y.; Veeravalli, B.; Chen, F.; El-Sayed, H. DVFS-Based Quality Maximization for Adaptive Applications with Diminishing Return. IEEE Trans. Comput. 2020, 70, 803–816. [Google Scholar] [CrossRef]
  7. Ying, Z.; Robertazzi, T.G. Signature Searching in a Networked Collection of Files. IEEE Trans. Parallel Distrib. Syst. 2014, 25, 1339–1348. [Google Scholar] [CrossRef]
  8. Zhang, J.; Shi, L.; Liu, Y.; Robertazzi, T.G. Optimizing Data Intensive Flows for Networks on Chips. Parallel Process. Lett. 2021, 31, 2150013. [Google Scholar] [CrossRef]
  9. Li, P.; Veeravalli, B.; Kassim, A. Design and implementation of parallel video encoding strategies using divisible load analysis. IEEE Trans. Circuits Syst. Video Technol. 2005, 15, 1098–1112. [Google Scholar]
  10. Wang, X.; Veeravalli, B.; Song, J. Multi-Installment Scheduling for Large-Scale Workload Computation with Result Retrieval. Neurocomputing 2021, 458, 579–591. [Google Scholar] [CrossRef]
  11. Carroll, T.E.; Grosu, D. A Strategyproof Mechanism for Scheduling Divisible Loads in Bus Networks without Control Processors. In Proceedings of the 20th IEEE International Parallel & Distributed Processing Symposium, Washington, DC, USA, 25–29 April 2006; pp. 1–8. [Google Scholar]
  12. Ghanbari, S.; Othman, M.; Bakar, M.R.A.; Leong, W.J. Multi-objective method for divisible load scheduling in multi-level tree network. Future Gener. Comput. Syst. 2015, 54, 132–143. [Google Scholar] [CrossRef]
  13. Zhang, Z.; Robertazzi, T.G. Scheduling Divisible Loads in Gaussian, Mesh and Torus Network of Servers. IEEE Trans. Comput. 2015, 64, 3249–3264. [Google Scholar] [CrossRef]
  14. Chen, C.Y. Divisible Nonlinear Load Distribution on Complete b-Ary Trees. IEEE Trans. Aerosp. Electron. Syst. 2020, 56, 998–1013. [Google Scholar] [CrossRef]
  15. Wu, Z.; Sun, J.; Zhang, Y.; Zhu, Y.; Li, J.; Plaza, A.; Benediktsson, J.A.; Wei, Z. Scheduling-Guided Automatic Processing of Massive Hyperspectral Image Classification on Cloud Computing Architectures. IEEE Trans. Cybern. 2020, 51, 3588–3601. [Google Scholar] [CrossRef]
  16. Zhang, Y.; Xu, Q.; Xu, L.; Chen, C.; Guan, X. Efficient flow scheduling for industrial time-sensitive networking: A divisibility theory-based method. IEEE Trans. Ind. Inform. 2022, 18, 9312–9323. [Google Scholar] [CrossRef]
  17. Kim, D.; Park, K.; Ro, W.W. Network coding on heterogeneous multi-core processors for wireless sensor networks. Sensors 2011, 11, 7908–7933. [Google Scholar] [CrossRef] [Green Version]
  18. Chen, W.; Zhu, Y.; Liu, J.; Chen, Y. Enhancing Mobile Edge Computing with Efficient Load Balancing Using Load Estimation in Ultra-Dense Network. Sensors 2021, 21, 3135. [Google Scholar] [CrossRef]
  19. Kazemi, S.M.; Ghanbari, S.; Kazemi, M.; Othman, M. Optimum scheduling in fog computing using the Divisible Load Theory (DLT) with linear and nonlinear loads. Comput. Netw. 2023, 220, 109483. [Google Scholar] [CrossRef]
  20. Bharadwaj, V.; Xiaolin, L.; Ko, C.C. Design and analysis of load distribution strategies with start-up costs in scheduling divisible loads on distributed networks. Math. Comput. Model. 2000, 32, 901–932. [Google Scholar] [CrossRef]
  21. Berlińska, J.; Drozdowski, M. Heuristics for multi-round divisible loads scheduling with limited memory. Parallel Comput. 2010, 36, 199–211. [Google Scholar] [CrossRef]
  22. Fei, W.; Yang, C.; Robertazzi, T. Optimal Divisible Load Scheduling for Resource-Sharing Network. arXiv 2019, arXiv:1902.01898. [Google Scholar]
  23. Marszalkowski, J.; Drozdowski, M.; Singh, G. Time-energy trade-offs in processing divisible loads on heterogeneous hierarchical memory systems. J. Parallel Distrib. Comput. 2020, 144, 206–219. [Google Scholar] [CrossRef]
  24. Ghanbari, S.; Othman, M. Time Cheating in Divisible Load Scheduling: Sensitivity Analysis, Results and Open Problems. Procedia Comput. Sci. 2018, 125, 935–943. [Google Scholar] [CrossRef]
  25. Tong, W.; Xiao, S.; Li, H. Fault-Tolerant Scheduling Algorithm with Re-allocation for Divisible Loads on Homogeneous Distributed System. IAENG Int. J. Comput. Sci. 2018, 45, 450–457. [Google Scholar]
  26. Kang, S.; Veeravalli, B.; Aung, K. Dynamic scheduling strategy with efficient node availability prediction for handling divisible loads in multi-cloud systems. J. Parallel Distrib. Comput. 2018, 113, 1–16. [Google Scholar] [CrossRef]
  27. Wang, S.; Lu, Y.; Chu, F.; Yu, J. Scheduling with divisible jobs and subcontracting option. Comput. Oper. Res. 2022, 145, 105850. [Google Scholar] [CrossRef]
  28. Majid, M.L.A.; Chuprat, S. Adapting market-oriented policies for scheduling divisible loads on clouds. Int. J. Distrib. Syst. Technol. 2020, 11, 45–55. [Google Scholar] [CrossRef]
  29. Drozdowski, M.; Shakhlevich, N.V. Scheduling divisible loads with time and cost constraints. J. Sched. 2021, 24, 507–521. [Google Scholar] [CrossRef] [Green Version]
  30. Veeravalli, B.; Barlas, G. Scheduling Divisible Loads with Processor Release Times and Finite Size Buffer Capacity Constraints in Bus Networks. Clust. Comput. 2003, 6, 63–74. [Google Scholar]
  31. Wang, X.; Wang, Y.; Lai, J. Divisible-Load Scheduling for Network-Based Computing Systems with Processor Startup Overheads and Release Times. In Proceedings of the IEEE International Conference on Computational Intelligence & Security, Wuxi, China, 16–19 December 2016; pp. 9–13. [Google Scholar]
  32. Wang, X.; Wang, Y.; Cai, K. Release time and distribution sequence aware divisible-load scheduling model. J. Huazhong Univ. Sci. Technol. Nat. Sci. Ed. 2015, 43, 106–111. [Google Scholar]
  33. Hu, M.; Veeravalli, B. Requirement-Aware Strategies with Arbitrary Processor Release Times for Scheduling Multiple Divisible Loads. IEEE Trans. Parallel Distrib. Syst. 2011, 22, 1697–1704. [Google Scholar] [CrossRef]
  34. Choi, K.; Robertazzi, T.G. An Exhaustive Approach to Release Time Aware Divisible Load Scheduling. In Proceedings of the International Conference on Parallel & Distributed Processing Techniques & Applications, Las Vegas, NV, USA, 18–21 July 2011; pp. 1–6. [Google Scholar]
  35. Wang, X.; Wang, Y.; Meng, K. A New Genetic Algorithm for Release-Time Aware Divisible-Load Scheduling. In Proceedings of the IEEE Tenth International Conference on Computational Intelligence & Security, Kunming, China, 15–16 November 2014; pp. 134–138. [Google Scholar]
  36. Lai, J.; Wang, Y.; Wang, X. An Optimization Model for Divisible-Load Scheduling Considering Processor Time-Window. J. Xi’an Jiaotong Univ. 2017, 51, 118–124. [Google Scholar] [CrossRef]
Figure 1. Heterogenous single-level tree network topology.
Figure 1. Heterogenous single-level tree network topology.
Sensors 23 03550 g001
Figure 2. Multi-installment scheduling with server available times.
Figure 2. Multi-installment scheduling with server available times.
Sensors 23 03550 g002
Figure 3. Multi-installment scheduling before applying repair strategy.
Figure 3. Multi-installment scheduling before applying repair strategy.
Sensors 23 03550 g003
Figure 4. Multi-installment scheduling after applying repair strategy on the first server.
Figure 4. Multi-installment scheduling after applying repair strategy on the first server.
Sensors 23 03550 g004
Figure 5. An example of the case when e a r l y < l a t e r .
Figure 5. An example of the case when e a r l y < l a t e r .
Sensors 23 03550 g005
Figure 6. An example of the case when e a r l y > l a t e r .
Figure 6. An example of the case when e a r l y > l a t e r .
Sensors 23 03550 g006
Figure 7. Makespan of the entire workload vs. workload size.
Figure 7. Makespan of the entire workload vs. workload size.
Sensors 23 03550 g007
Table 1. Notations and their meanings.
Table 1. Notations and their meanings.
NotationsMeanings
n Total number of servers involved in workload computation
p 1 , p 2 , , p n Servers involved in workload computation
l 1 , l 2 , , l n Communication links connected the master and the servers
W Total size of the workload to be processed on a networked system
e i Communication startup overhead of server p i
f i Computation startup overhead of server p i
g i Communication time of link l i to transmit unit size of workload
w i Computation time of server p i to finish computing unit size of workload
T i o n Online time of server p i
T i o f f Offline time of server p i
A = ( α 1 , α 2 , , α n ) α i is the load partition assigned on server p i in each internal installment
B = ( β 1 , β 2 , , β n ) β i is the load partition assigned on server p i in the last installment
U = ( u 1 , u 2 , , u n ) u i indicates which number of installments server p i starts to participate in the internal installments
T i s t a r t Theoretical start time of server p i when sever online time constraint is not considered
T i e n d Completion time of server p i
T i e n d * Updated completion time of server p i after local search or repair strategy
T Makespan of the entire workload
Table 2. Parameters of the heterogeneous networked system.
Table 2. Parameters of the heterogeneous networked system.
Servers e i g i f i w i T i o n T i o f f
p12.510.970.525.1925.171045.99
p22.040.510.243.4936.94341.67
p31.370.870.144.2486.741124.78
p42.020.260.285.5341.351273.56
p53.250.740.355.1643.35379.53
p64.290.930.194.5834.34957.27
p71.780.720.463.4168.52431.68
p83.640.240.166.7532.92862.64
p93.110.680.226.3263.47529.62
p103.250.610.394.9145.671446.8
p114.290.420.263.8923.46623.24
p122.750.860.135.4132.71682.13
p131.430.690.256.0756.92716.17
p141.780.290.434.8956.421872.37
p155.910.360.323.2836.52798.47
Table 3. Experimental results—comparison between SIS and MIS.
Table 3. Experimental results—comparison between SIS and MIS.
Workload SizeSISMIS
200164.03156.902
300223.141196.93
400282.223236.554
500341.755274.961
600408.189318.141
700478.732362.966
800553.166406.991
900630.684438.42
1000714.867502.245
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wang, X.; Veeravalli, B.; Song, X.; Zhang, K. Maximizing Heterogeneous Server Utilization with Limited Availability Times for Divisible Loads Scheduling on Networked Systems. Sensors 2023, 23, 3550. https://doi.org/10.3390/s23073550

AMA Style

Wang X, Veeravalli B, Song X, Zhang K. Maximizing Heterogeneous Server Utilization with Limited Availability Times for Divisible Loads Scheduling on Networked Systems. Sensors. 2023; 23(7):3550. https://doi.org/10.3390/s23073550

Chicago/Turabian Style

Wang, Xiaoli, Bharadwaj Veeravalli, Xiaobo Song, and Kaiqi Zhang. 2023. "Maximizing Heterogeneous Server Utilization with Limited Availability Times for Divisible Loads Scheduling on Networked Systems" Sensors 23, no. 7: 3550. https://doi.org/10.3390/s23073550

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop