Next Article in Journal
Explainable AI and Fuzzy Linguistic Interpretation for Enhanced Transparency in Public Procurement: Analyzing EU Tender Awards
Previous Article in Journal
Practical Fixed-Time Tracking Control for Strict-Feedback Nonlinear Systems with Flexible Prescribed Performance
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Max–Min Share-Based Mechanism for Multi-Resource Fair Allocation with Bounded Number of Tasks in Cloud Computing System

1
Faculty of Information Engineering and Automation, Kunming University of Science and Technology, Kunming 650504, China
2
Yunnan Key Laboratory of Computer Technology Application, Kunming University of Science and Technology, Kunming 650504, China
3
City College, Kunming University of Science and Technology, Kunming 650504, China
*
Author to whom correspondence should be addressed.
Mathematics 2025, 13(13), 2214; https://doi.org/10.3390/math13132214
Submission received: 15 February 2025 / Revised: 29 April 2025 / Accepted: 1 July 2025 / Published: 7 July 2025

Abstract

Finding a fair and efficient multi-resource allocation is a fundamental goal in cloud computing systems. In this paper, we consider the problem of multi-resource allocation with a bounded number of tasks. We propose a lexicographic max–min maximin share (LMM-MMS) fair allocation mechanism and design a non-trivial polynomial-time algorithm to find an LMM-MMS solution. In addition, we prove that LMM-MMS satisfies Pareto efficiency, sharing incentive, envy-freeness, and group strategy-proofness properties. The experimental results showed that LMM-MMS could produce a fair allocation with a higher resource utilization and completion ratio of user jobs than previous known fair mechanisms; LMM-MMS also performed well in resource sharing.

1. Introduction

Multi-resource fair (or efficient) allocation is a fundamental problem in any shared computing system, including cloud computing systems. In a cloud computing system, there are a large number of users with heterogeneous jobs, each containing a bounded number of tasks with the same resource demands [1]. After submitting their jobs, the system should allocate resources to each user as fairly and efficiently as possible.
As mentioned by Ghodsi et al. [2], traditional slot-based scheduler frameworks such as Hadoop achieve poor performance, unfairly punishing certain workloads. In response to this challenge, Ghodsi et al. [2] proposed a compelling alternative, known as dominant resource fairness, which maximizes the minimum dominant share of users, where the dominant share is the maximum share of any resource allocated to that user. Dominant resource fairness (DRF) has been shown to satisfy some desirable fair and efficient properties such as Pareto efficiency, sharing incentive, envy-freeness, and strategy-proofness, and has been implemented in Hadoop for multi-resource fair allocation. Meskar et al. [3] innovatively proposed the Kalai–Smorodinsky negotiation solution to the problem of multi-resource allocation. Due to the excellent performance of the DRF, some variants have been proposed. Sadok et al. [4] proposed Stateful DRF to solve the problem of traditional DRF ignoring historical use by introducing a time decay function and historical use weights. Tang et al. [5] proposed a long-term multi-resource fairness method that, although considering long-term fairness, performs poorly with the complexity of large-scale systems. Parkes et al. [6] extended DRF to a more general case where the user may have zero demands. Recently, Zhang et al. [7] generalized the asset fairness mechanism for improving resource utilization. Li et al. [8] extended DRF to a dynamic scenario, where users can enter and leave the system multiple times. Fallah et al. [9] studied the fair allocation problem in dynamic mechanism design. They proposed a mechanism that can maintain long-term fairness in a dynamic environment by exploring the incentives for dominant resource fair distribution under dynamic demands. Fikioris et al. [10] proposed an improved DRF mechanism that prevents users from benefiting from false reporting of their demands. While DRF and its subsequent versions addressed multi-resource fairness with demand heterogeneity, they all have difficulty achieving high resource utilization. For example, Dolev et al. [11] showed that, although their proposed bottleneck-based fairness (BBF) is better than DRF in many aspects such as algorithm efficiency, both could achieve high resource utilization. Meskar et al. [12] proposed Task Share Fairness with External Resource (TSF-ER) to balance fairness and high resource utilization in heterogeneous server environments.
Recently, another well-known method, Maxmin share (MMS) fair allocation [13], has attracted much attention. MMS can guarantee each user a result no worse than the case of receiving its least desirable allocation. Li et al. [5] extended MMS to a more general case where each job is associated with a release time, deadline, and processing time. Guo et al. [14] proposed a mechanism through bandwidth demand compression technology to improve the overall efficiency of the system while ensuring fairness, and solved the MMS fair allocation problem of multi-resources considering bandwidth demand compression in cloud-edge collaborative systems. Kurokawa et al. [15] presented an algorithm that can determine a 2/3-approximation MMS allocation. Guo et al. [16] proposed an MMS-based dynamic allocation mechanism with elastic demands.
In a real-world cloud computing system, the users have a bounded number of tasks [1]. Li et al. [15] proposed a task share fairness in cloud-edge collaborative computing systems (TSF-CE) mechanism to solve the problem of fair allocation of multi-resources in cloud-edge collaborative systems with access constraints. Ghodsi et al. [17] proposed the Choosy algorithm to solve the problem of fair allocation of resources with constraints in data centers. Wang et al. [1] studied the multi-resource problem in a heterogeneous computing system with a bounded number of tasks and presented a generalized water-filling algorithm. However, the running time of water-filling is pseudo-polynomial. It would be desirable to design an efficient polynomial-time algorithm. By extending the DRF algorithm, Li et al. [18] proposed a dynamic multi-resource fair allocation mechanism that takes into account the constraints on the number of bounded tasks. Li et al. [18] generalized DRF to the case where each user has a limited number of tasks. However, few of the MMS-based mechanisms consider a bounded number of tasks. Therefore, it is necessary to generalize MMS to the bounded case, where users have a finite number of task demands.
When the number of completed tasks is limited, it is difficult to design an efficient mechanism that takes into account both fairness and high resource utilization. To solve this problem, we propose a polynomial-based lexicographical max–min MMS-based (LMM-MMS) fair allocation mechanism. Table 1 compares our approach and main closely related works in 4 aspects.
In this paper, we consider the multi-resource fair allocation problem in cloud computing systems with a bounded number of tasks. We present a lexicographically max–min MMS-based (LMM-MMS) fair allocation mechanism. Moreover, we design a polynomial-time algorithm to find an LMM-MMS fair allocation and show that LMM-MMS satisfies some desirable fair allocation properties.
The LMM-MMS mechanism can make significant contributions to multi-resource fair allocation in cloud computing systems with bounded task numbers. It innovatively addresses the practical constraint of limited task quantities by introducing the MMS concept, while maintaining critical fairness properties, including strategy-proofness, sharing incentive, envy-freeness, and proportional fairness. The algorithm achieves efficient O ( n ) time complexity, making it applicable to large-scale environments. This mechanism successfully balances efficiency and fairness, providing both theoretical guarantees and practical solutions for resource management in cloud computing environments.
The rest of this paper is organized as follows: Section 2 presents the system model and some definitions of desirable properties. Section 3 introduces the MMS-based mechanism for a bounded number of tasks. Section 4 presents a non-trivial polynomial-time optimal algorithm and analyzes the allocation properties LMM-MMS satisfies. Section 5 provides experimental results based on real data. Section 6 concludes the paper and outlines future work.

2. Preliminaries

2.1. System Model

Suppose there are m resources (e.g., CPU, memory, GPU, etc.) and n users in a cloud computing system. Let C = ( c 1 , c 2 , , c m ) T be the capacity vector of all resources, where c j > 0 denotes the capacity of resource j for j = 1 , 2 , , m . Let D i = ( d i 1 , d i 2 , , d i m ) T be the resource demand vector for each user i, where d i j > 0 is the per-task demand for resource j. Table 2 lists the symbols that are frequently used throughout this paper.
For convenience, let [ a ] denote a set 1 , 2 , , a for any positive integer a. For each user i [ n ] , let A i = ( a i 1 , a i 2 , , a i m ) T be the resource allocation vector of user i, where a i j > 0 is the amount of resources j allocated to user i by the system. Let A = ( A 1 , A 2 , , A n ) T be the allocation matrix for all users. Given an allocation A , if the sum of the allocation of all users for any resource j [ m ] is no more than c j , we say this is a feasible allocation, i.e.,
i = 1 n a i j c j , j [ m ] .
As mentioned in [20], the number of tasks that need to be processed by each user is bounded in the real system. In this paper, let B i be the bounded number of tasks submitted by the user i. As in [2], given an allocation A i and B i , each user i s utility is the maximum number of tasks it can run by using its allocated resources bounded by B i , i.e.,
u i ( A i ) = m i n ( m i n j a i j d i j , B i ) .
Let A be the set of all feasible allocations. A popular criterion is often used for fair allocation, called max-min share (MMS) fairness [23], the core idea of which is to compute a feasible allocation in A . In this allocation, everyone believes that it (approximately) maximizes the utility in the worst case [13,23], i.e.,
M M S i = m a x A : A A m i n k : k [ n ] u i ( A K ) , i [ n ] .
Theorem 1, proved in the full version in [13], shows that the M M S i of each user i is the utility through equal allocation of resources.
Theorem 1.
For each user i [ n ] , the value of M M S i is equal to u i ( c n ) .
For convenience, let x i = u i ( A i ) be the maximum (fractional) number of tasks user i can process by using its allocated resources. Given a feasible allocation A A , let θ = ( θ 1 , θ 2 , , θ n ) be the max–min share (MMS) ratio vector of all users, where θ i = x i / M M S i is the ratio of the utility of user i to M M S i .

2.2. Allocation Properties

In a cloud computing system, how to design a fair and efficient mechanism for multi-resource sharing is a critical issue. Similarly to [2,20,21], the following core properties need to be satisfied for multi-resources with a bounded number of tasks:
  • Pareto efficiency (PE). It is impossible to increase the number of tasks of any user processed on the system without decreasing the allocation of another user. Formally, given a feasible allocation A , if there exists a user i satisfying
    u i ( A i ) u i ( A ˜ i )
    for any feasible allocation A ˜ A , we say A is Pareto efficient.
  • Sharing incentive (SI). This ensures each user can receive an allocation no worse than evenly allocated. Formally, for each user i, either x i = B i or there exists a resource j [ m ] such that
    x i d i j c j / n .
  • Envy-freeness (EF). No user prefers another user’s allocation. Formally, for each user i, either x i = B i or for any user k, there exists a resource j [ m ] such that
    d i j x i d k j x k .
  • Group strategy-proofness (GSP). No user can process more tasks by forming a demand misreporting strategy coalition C . Formally, suppose any user i C misreports its demand as D ˜ i , and the returned allocation is A ˜ i . The number of tasks user i can process will be no more than that of under true reporting, i.e.,
    u i ( A i ) u i ( A ˜ i ) .

3. LMM-MMS Mechanism

In this section, we design a multi-resource fair allocation mechanism for fair resource sharing with a bounded number of tasks.

3.1. Lexicographic Max–Min Allocation

In the multi-resource fair allocation problem, the main problem is how to define ‘fair’. The well-known lexicographic max–min fairness [24] (LMM) is an interesting choice. Given a feasible allocation A A , we compute the max–min share (MMS) ratio vector θ for all users.
Definition 1.
An MMS ratio vector θ is called lexicographically max-min (LMM)-optimal, if for any feasible MMS ratio vector θ ˜ , θ r is lexicographically greater than θ ˜ r , where θ r ( θ ˜ r ) is the vector obtained by arranging the MMS ratio vector θ ( θ ˜ ) in order of no decreasing magnitude.
For example, given two feasible MMS ratio vectors θ = ( 1.1 , 1.2 , 0.1 ) and θ ˜ = ( 0.5 , 0.4 , 0.6 ) , θ is not LMM-optimal, as θ ˜ r = ( 0.4 , 0.5 , 0.6 ) is lexicographically greater than θ r = ( 0.1 , 1.1 , 1.2 ) .

3.2. LMM-MMS Mechanism

An LMM-optimal max–min share (LMM-MMS) mechanism can be formally formulated as the following program (LMM-MMS):
M A X ( θ 1 , θ 2 , , θ n ) s t : i = 1 n x i · d i j c j , j [ m ]
x i B i , i [ n ] θ i = x i / M M S i , x i 0 .
The first constraint ensures that the total amount of allocated resources does not exceed the capacity. The second constraint ensures that the number of tasks a user runs does not exceed its requirements. The third constraint defines the max–min share ratio.
Example 1.
Consider a scenario in a cloud computing system with two users and two types of resources (CPU and memory). The resource demands and requested task numbers of two users are (0.5, 1; 1) and (1, 0.5; 10), respectively, and the capacity vector of the two resources is (10, 4). By definition of the max–min share, we obtain M M S 1 = 1 , M M S 2 = 4 . The corresponding LMM-MMS is
M A X ( θ 1 , θ 2 ) s t : 0.5 x 1 + x 2 10 x 1 + 0.5 x 2 4 x 1 1 x 2 10 θ 1 = x 1 / 1 θ 2 = x 2 / 4 x 1 , x 2 0
Whose optimal value is (1, 1.5), achieved by setting x 1 = 1 , x 2 = 6 .

4. Scheduling Algorithm

The LMM-MMS optimal solution can be computed in an approximate way using the water-filling algorithm [1], by simulating the ‘water injection’ process, treating resource allocation as the process of injecting water into the container. The user with the lowest share of resources is determined and resources are allocated to that user. When computed using other variants [13,16], the running time is quite high. In this section, an efficient scheduling algorithm is designed to find the LMM-MMS optimal solution.

4.1. The LMM-MMS Scheduling Algorithm

Since each user i will not run more tasks than its task requirements B i , the MMS ratios of user i in any feasible allocation are
θ i m a x = B i / M M S i .
Similarly to [20], for a positive number θ > 0 , let A ( θ ) = ( θ 1 , , θ n ) be the MMS ratios, where θ i = m i n θ i m a x , θ . We have the following lemma:
Lemma 1.
There exists a positive number θ * , where A ( θ * ) is the LMM-optimal MMS ratio vector.
Proof of Lemma 1.
Let A ( θ * ) = ( θ 1 * , , θ n * ) be an LMM-optimal MMS ratio vector, where θ * = m a x i θ i * . Now suppose a contradictory scenario: if there exists a user k [ n ] , whose θ k * m i n θ k m a x , θ * , we have θ k * < θ k m a x and θ k * < θ * . Consider another user h k , where θ h * = θ * > θ k * . Since θ k * < θ k m a x , we have x k * < B k , and we can construct a new MMS ratio vector θ ˜ = ( θ ˜ 1 , , θ ˜ n ) by releasing a small enough number of resources from user h to user k, where
θ ˜ i = ( x h * ε 1 ) / M M S h , i = h , ( x k * + ε 2 ) / M M S k , i = k , θ i * , i k , h .
Here, ε 1 and ε 2 are small enough positive numbers, where ε 2 ε 1 m i n j r h j / r k j and θ ˜ h > θ ˜ k . Clearly, ε 2 r k j ε 1 r h j for each resource j [ m ] , which implies that θ ˜ is a feasible MMS ratio vector. Thus, θ k * < θ ˜ k < θ ˜ h < θ h * and θ ˜ i = θ i * , i k , h . This contradicts the assumption that ( θ 1 * , , θ n * ) is an LMM-optimal MMS ratio vector.    □
Theorem 2.
The LMM-MMS optimal solution can be found within time O ( n ) .
Proof of Theorem 2.
According to (9), the max MMS ratio set of all users, θ 1 m a x , , θ n m a x can be computed using the PICK method [25] to find the median value θ in θ 1 m a x , , θ n m a x . Let θ i = m i n θ i m a x , θ and x i = θ i M M S i . Obviously, if the above allocation is feasible, i.e., i = 1 n x i d i j c j , j [ m ] , we have θ * θ . Otherwise, θ * < θ . We distinguish the following two cases: (1) θ * θ . In this case, there must be at least half of the users i satisfying θ i = θ i m a x . Since θ i = m i n θ i m a x , θ , we have θ i m a x < θ < θ * . Based on Lemma 1, we have θ i * = m i n θ i m a x , θ * = θ i m a x , which implies the number of tasks these users can run is the same as their requirement, i.e., x i = B i . Now delete these users i and decrease the corresponding resources consumed by these users. (2) θ * < θ . In this case, there must be at least half of the users i satisfying θ i m a x θ > θ * and θ i = θ . Based on Lemma 1, we have θ i * = m i n θ i m a x , θ * = θ * . Thus, it is not feasible for the MMS ratio of these users i to be θ i = θ . We merge these users i with θ i = θ into a ‘dummy’ user set U d u m . Given a feasible MMS ratio θ d u m for each user in U d u m , we have x i = θ d u m M M S i . Correspondingly, each user i in U d u m consumes each resource j [ m ] as A j d u m = i U d u m x i j d i j = i U d u m θ d u m M M S i d i j . For convenience, let δ j = i U d u m M M S i d i j and A j d u m = θ d u m δ j .
Note that the number of users is reduced by at least half in both of the two cases. Again, use the PICK method [15] to find the median value θ in { θ i m a x |  i is the remaining user and is not the dummy user}. Then, compare the same two cases of θ and θ * discussed above and delete the users by half correspondingly until there is only one dummy user. Finally, we find the user k with the biggest θ k m a x such that θ k m a x θ * . For each user i satisfying θ i m a x θ k m a x θ * , let their LMM-optimal MMS ratio be θ i * = θ i m a x . For each dummy user i satisfying θ i m a x > θ k m a x , after decreasing the resources consumed by these users i with θ i m a x θ k m a x , we can obtain the LMM-optimal MMS ratio by solving the following linear program (LP):
m a x θ i U d u m θ M M S i d i j c j i : θ i m a x θ k m a x B i d i j , j [ m ] .
The optimal value of the above LP is
θ * = m i n j c j i : θ i m a x θ k m a x B i d i j i U d u m M M S i d i j = m i n j c j i : θ i m a x θ k m a x B i d i j δ j .
For each dummy user i U d u m , set θ i * = θ * , and then we obtain the LMM-optimal MMS ratio vector A ( θ * ) = ( θ 1 * , , θ n * ) . The scheduling algorithm is described in Algorithm 1.
At each iteration k ( 1 k l o g 2 n ) , at most n / ( 2 k 1 + 1 ) users remain, determining whether θ θ * can be carried out within O ( m n / 2 k 1 ) . Thus, the overall running time is O ( m ( n + n / 2 + n / 2 2 + + 1 ) ) = O ( m n ) . Since the resource type m is a bound number in a cloud computing system [21], the running time is linear in n, and the time complexity of the entire process is O ( n ) .    □
To express the steps of the algorithm more clearly, we give an example.
Example 2.
Consider a scenario in a cloud computing system with three users and two types of resources (CPU and memory). The resource demands and number of requested tasks of three users are (1, 1; 2), (2, 2; 3), and (3, 3; 2), respectively, and the capacity vector of the two resources is (6, 6). By definition of the max–min share, we obtain M M S 1 = 2 , M M S 2 = 1 , and M M S 3 = 2 3 .
Algorithm 1 LMM-MMS scheduling algorithm
  1:
INPUT: C = ( c 1 , c 2 , , c m ) T , D i = ( d i 1 , d i 2 , , d i m ) T , B i
  2:
OUTPUT: θ * = ( θ 1 * , , θ n * )
  3:
Step 1.  Initialization
  4:
θ i * = 0 , i [ n ]
  5:
U = 1 , , n U d u m = ,
  6:
Q = ( θ 1 m a x , , θ n m a x ) ,
  7:
θ d u m = 0 , δ j = 0 , j [ m ] .
  8:
Step 2.  Using PICK method [25] to find median θ in Q ,
  9:
set θ i = m i n θ i m a x , θ , i [ n ] , θ d u m = θ .
10:
if  θ d u m δ j + i U B i d i j c j , j [ m ]  then
11:
     c j c j i : θ i * = θ i m a x B i d i j , j [ m ] ;
12:
     U U i | θ i * = θ i m a x ;
13:
else
14:
     δ j δ j + i : θ i * < θ i m a x M M S i d i j , j [ m ] ;
15:
     U d u m U d u m i | θ i * < θ i m a x a n d i U ;
16:
     U U i | θ i * < θ i m a x a n d i U ;
17:
end if
18:
Step 3.  
19:
if  U  then
20:
    go to Step 2;
21:
else
22:
    for i in U d u m do
23:
     θ i m a x m i n j c j i : θ i m a x θ B i d i j δ j ;
24:
end if
25:
Step 4.  Output θ * = ( θ 1 * , , θ n * )
First, the initialization operation is performed. The θ * of all users is 0, U = 1 , 2 , 3 , and U d u m is an empty set. According to the definition, we can calculate the set Q = ( θ 1 m a x , θ 2 m a x , θ 3 m a x ) = ( 1 , 3 , 3 ) . At the same time, θ d u m = 0 , and any type δ j is also 0, j [ m ] . Next, consider picking out the median value θ from the set tm by the PICK method, and then all users are compared according to θ and the largest request task numbers θ i m a x . In this case θ d u m = θ = 3 , the θ of the three users is θ 1 = 1 , θ 2 = 3 , θ 3 = 3 . In this setting, due to the median value θ being selected from Q , the amount allocated can ensure that some users can reach the bounded number of requested tasks. Here, user 1 is satisfied, θ = θ 1 m a x , while user 2 and user 3 are not satisfied, so they are removed from the set U and enter the set U d u m = 2 , 3 . The current total allocation δ j = 4 of resource j is updated, and the resource is first allocated to the user with a feasible allocation. On the premise of ensuring that the allocation of user 1 does not exceed the resource capacity, user 1 is allowed to allocate resources according to the maximum number of requested tasks that it can complete. The remaining resources are then updated, and user 1 is removed from set U. At this time, U is an empty set, and users in the U d u m are considered, and the remaining resources are maximized and allocated to user 2 and user 3. Finally, the number of tasks completed by the three users is (2, 1, 2 3 ). The total resource consumption is (6, 6), which means that all resources are consumed, due to the assumption that each user has the same demand for the two resources. So the amount of different resources allocated for three users is the same, which is (2, 2), (2, 2), and (2, 2), respectively.

4.2. Allocation Property Analysis

In this section, we analyze the allocation properties of LMM-MMS.
Lemma 2.
For any user i [ n ] , if x i * < B i , we have θ i * θ k * , k [ n ] .
Proof of Lemma 2.
Considering the contradiction scenario, a user h i satisfies θ h * > θ i * . Based on (10), we can construct a feasible allocation and θ ˜ = ( θ ˜ 1 , θ ˜ 2 , , θ ˜ n ) , where θ h * > θ ˜ h > θ ˜ i > θ i * , and θ ˜ h = θ h * , h i , k . It is easy to verify that θ ˜ r is lexicographically greater than θ r * , which contradicts θ * being the LMM-MMS optimal vector. □
Theorem 3.
In a cloud environment with n users and m resource types, there is a clear upper limit on the number of tasks submitted by each user, LMM-MMS satisfies the PE property.
Proof of Theorem 3.
Suppose the contradictory scenario that LMM-MMS cannot satisfy PE, i.e., there is another feasible allocation A ˜ and at least a user i satisfies u i ( A ˜ ) = u i ( A ) + δ > u i ( A ) and u h ( A ˜ ) = u h ( A ) , h i , where δ is a small enough positive number. Correspondingly, the MMS ratio vector under A ˜ is θ ˜ = ( θ ˜ 1 , θ ˜ 2 , , θ ˜ n ) , where B i / M M S i θ ˜ i > θ i * and θ ˜ h = θ h , h i . Clearly, θ ˜ r is lexicographically greater than θ r * , which contradicts θ * being the LMM-MMS optimal vector. □
Lemma 3.
If x i * < B i for any user i [ n ] , then at least one resource is saturated.
Proof of Lemma 3.
Suppose the contradictory scenario that no resource is saturated. By Theorem 3, user i with x i * < B i can be allocated more resources to process more tasks, without reducing the other allocation, i.e., x ˜ i = x i * + δ > x i * , where δ = m i n j ( c j h = 1 n x h d h j ) / d i j . Correspondingly, the new MMS ratio vector is θ ˜ = ( θ ˜ 1 , θ ˜ 2 , , θ ˜ n ) , where θ ˜ i = ( x i * + δ ) / M M S i > θ i * , and θ ˜ h = θ h * , h i . Clearly, θ ˜ r is lexicographically greater than θ r * , which contradicts θ * being the LMM-MMS optimal vector. □
Theorem 4.
In a cloud environment with n users and m resource types, there is a clear upper limit on the number of tasks submitted by each user, and LMM-MMS satisfies the SI property.
Proof of Theorem 4.
If x i * = B i for every user i [ n ] , then LMM-MMS satisfies the SI property. Otherwise, if there is a user k with x k < B k , we consider this situation in two cases: (1) For all users i [ n ] , there exists at least one resource j satisfying x k * d k j c j / n . In this case, LMM-MMS satisfies the SI property. (2) For a user k [ n ] with x k < B k and for all resources j [ m ] , satisfying x k * d k j < c j / n . Since x k < B k , based on Lemma 3, without loss of generality, assume that resource j is saturated, i.e., i = 1 n x i * d i j = c j . Based on Theorem 3, there must be at least one other user h k whose allocation is greater than an even allocation, i.e., x h * d h j > c j / n , and we have θ h * = x h * / M M S h > 1 > θ k * , which contradicts Lemma 1. □
Theorem 5.
In a cloud environment with n users and m resource types, there is a clear upper limit on the number of tasks submitted by each user, LMM-MMS satisfies the EF property.
Proof of Theorem 5.
For any user i [ n ] , if x i * = B i , user i will not envy other users. Now suppose a contradiction scenario in that x i * < B i and user i envies another user h i . Clearly, we have x h * d h j > x i * d i j = θ i * M M S i d i j , j [ m ] . Thus, x h * > θ i * M M S i m a x j d i j d h j . Based on the definition of MMS ratio, we have x h * > θ i * m i n j c j n d i j m a x j d i j d h j θ i * m i n j c j n d h j = θ i * M M S h . According to Lemma 2, we have θ i * θ k * , k [ n ] . Thus, x h * > θ i * M M S h θ h * M M S h = x h * . A contradiction. Therefore, LMM-MMS satisfies the EF property. □
Theorem 6.
In a cloud environment with n users and m resource types, there is a clear upper limit on the number of tasks submitted by each user, LMM-MMS satisfies the GSP property.
Proof of Theorem 6.
Let θ ˜ = ( θ ˜ 1 , θ ˜ 2 , , θ ˜ n ) be the LMM-MMS optimal MMS ratio vector when a coalition U ˜ [ n ] misreports their demand as D ˜ i D i , i U ˜ . We consider this scenario in two cases:
(1) If x i * = B i for any user i U ˜ . In this case, the user i can not increase its utility by misreporting.
(2) If x i * < B i for any user i U ˜ . Based on Lemma 2, we have
θ i * θ h * , h [ n ] .
Let ( x ˜ 1 , , x ˜ n ) be the number of tasks processed vector under the LMM-MMS allocation of misreporting. For user i U ˜ , we have θ ˜ i = x ˜ i / M M S ˜ i . Where M M S ˜ i = m i n j c j / n d ˜ i j . Meanwhile, for user h [ n ] / U ˜ , we have θ ˜ h = x ˜ h / M M S h . Now, Suppose the contradictory scenario, where x i * x ˜ i , i U ˜ , we have
x i * d i j < x ˜ i d ˜ i j , j [ m ] a n d θ i * < θ ˜ i .
Based on Lemma 3, since x i * < B i in the original case, there is at least one resource j saturated, i.e., k = 1 n x k * d k j = c j . When user i U ˜ misreports its demand, we have i U ˜ x ˜ i d ˜ i j + i [ n ] / U ˜ x ˜ i d i j c j and x i * d i j < x ˜ i d ˜ i j , i U ˜ . Clearly, at least one user h [ n ] / U ˜ receives fewer resources than if all users were truthful, i.e., x h * d h j < x ˜ h d h j , which implies x ˜ h < x h * B h , and
θ ˜ h = x ˜ h / M M S h < x h * / M M S h = θ h * .
Since x ˜ h < B h , based on Lemma 2, we have
θ ˜ h θ ˜ i .
combining (11)–(14), we can conclude θ ˜ h θ ˜ i > θ i * θ h * > θ ˜ h . A contradiction. Therefore, no user in a coalition U ˜ can increase its utility by demand misreporting. Thus, LMM-MMS satisfies the GSP property. □

5. Experimental Results

The performance of our proposed method is evaluated in this section using trace-driven simulation data provided by Alibaba. In particular, we compare LMM-MMS with DRF and AF. We compare all three mechanisms in terms of performance indicators related to the average resource utilization effectiveness, the completion rate of user jobs, and the sharing degree. Specifically, resource utilization represents the ratio of each resource (CPU, memory) allocated to the user from the system resource capacity. The user job completion rate represents what percentage of task requests (maximum number) submitted by users reach completion status. The sharing incentive property of LMM-MMS, as outlined in Section 4.2, is assessed through the sharing degree metric. Our simulation setup is described as follows.

5.1. Experimental Setup

To evaluate LMM-MMS at a larger scale, we simulated cluster replay logs from Alibaba clusters. The simulation replicated key characteristics from the original trace, including resource requirements (CPU, memory) for tasks and the quantity of tasks within each job that the users submitted. The simulation settings were as follows:
(1) Alibaba’s trace data provide comprehensive details about user-submitted tasks on a 4000-server cluster spanning an 8-day period. This information is categorized into machine_meta, machine_usage, container_meta, container_usage, batch_instance, and batch_task, as outlined in the scheme [26]. Our simulation extracted relevant data from batch_task, specifically task_name, plan_cpu, plan_mem, and instance_num.
(2) Each user’s resource requirements included both CPU and memory, generated according to the actual probability distribution of demands found in the batch_task data. For our purposes, we considered plan_cpu and plan_mem as representative of a user’s task resource requirements. Figure 1 depicts the memory and CPU consumption patterns across the various tasks. The area of each circle is logarithmic to the number of tasks represented within that region.
(3) For system resource capacity, we represent this as a column vector R = ( 100 , 100 ) T , indicating that the system comprises a total of 100 CPU cores and 100 GB of memory. Furthermore, all requirements were stochastically generated following the actual probability distribution of resource demands observed in the cluster trace. We evaluated the effect of user requirements at different scales on resource utilization.
(4) The task requirements of the users and the number of tasks were extracted according to the probability distribution of the Alibaba cluster dataset. In addition, the dataset was divided into normal task requirements and large task requirements, and quantitative extraction was carried out according to the proportion of large tasks.
(5) In order to simulate the provider specifications in real scenarios, four cloud servers with different specifications (100, 100), (500, 500), (50, 500), and (500, 50) were set up. Each specification corresponded to different CPU and memory capacities, and different experiments were set up for different specifications for comparison.
(6) Each experimental setting involved generating 100 random samples. We used the average of the experimental results to overcome randomness.
(7) We used the following metrics to evaluate the algorithm performance: Resource utilization reflects the efficiency of the mechanism and is a direct indicator for evaluating performance from a system perspective. Task completion rate reflects the effectiveness of the mechanism and is a key indicator for evaluating performance from a user’s perspective. The cumulative distribution function provides an intuitive representation of resource allocation fairness and helps understand the allocation characteristics of the mechanism.

5.2. The Impact of User Requirement Scale on Allocation

We first evaluated the performance of LMM-MMS with respect to the other two mechanisms under the setting of various user requirement scales. Figure 2 illustrates the resource utilization of LMM-MMS, DRF, and AF. Figure 2a shows that the LMM-MMS mechanism maintained a CPU resource utilization rate of nearly 100% under all user scales (50–300 users). Figure 2b shows it also performed well in memory utilization, maintaining around 80–85% for all user scales. When resources were not saturated, LMM-MMS demonstrated superior performance compared to both DRF and AF regarding resource utilization. This advantage stemmed primarily from LMM-MMS’s dual objective: ensuring fair allocation, while simultaneously maximizing efficiency of resource usage.
The experiments revealed that as the number of users grew, the LMM-MMS mechanism maintained stability and high efficiency at all scales, showing good adaptation to different scales. While ensuring fairness, it could achieve high resource utilization, which successfully solves the problem of the inefficiency of traditional fair distribution mechanisms (such as AF).

5.3. The Impact of Resource Capacity on Allocation

Real-world data centers exhibit varying configurations, resulting in disparate capacities across different resource types. Substantial gaps may exist between various resource capacities. For instance, data centers primarily processing computational workloads might feature extensive CPU capacity but limited memory resources. Conversely, data centers focused on data processing tasks may predominantly possess memory-centric configurations.
Our experimental setup involved 100 users across three distinct scenarios with varying resource capacity vectors: R 1 = ( 500 , 500 ) T , R 2 = ( 500 , 50 ) T , and R 3 = ( 50 , 500 ) T to show how capacity variations influenced allocation outcomes. Figure 3 presents a comparative analysis of the resource utilization across four allocation mechanisms under these different capacity configurations. The results demonstrate that LMM-MMS performed at least as effectively as alternative mechanisms when the resource capacities were balanced. In scenarios with significant capacity differences, LMM-MMS exhibited a performance advantage ranging from 12.3% to 15.59% over the other mechanisms.
These experimental results show the effectiveness of the proposed resource allocation mechanism based on the maximum and minimum share in improving the resource utilization rate of cloud computing environments, and also verify the applicability and advantage of this mechanism under the constraints of bounded tasks.

5.4. The Impact of the User Requirement Workload Type on Allocation

Our experiment showed how varying types of workload requirements affect resource utilization. With a total of 100 user requirements, we established five test scenarios with different proportions of elephant requirements: 0%, 5%, 10%, 20%, and 50%. The resource utilization across these different experimental configurations is illustrated in Figure 4. The results revealed that LMM-MMS achieved a progressively higher resource utilization as the proportion of elephant requirements increased, compared to alternative mechanisms. Specifically, when the elephant requirements accounted for 50% of the total requirements, the utilization rates exceeded those observed in scenarios with 20%, 10%, and 5% elephant requirements. This result demonstrates the significant influence that elephant requirement ratios exert on overall resource utilization. Notably, LMM-MMS delivered strong performance across all configurations, with particularly impressive results in scenarios characterized by high percentages of large requirements.
The results from these experiments demonstrate the efficacy of our proposed allocation mechanism based on the maximum and minimum share in improving the resource utilization rate of the cloud computing environment, especially in complex scenarios of a bounded number of task constraints and the existence of elephants.

5.5. The Completion Rate of User Jobs Under Different User Scales

To evaluate the efficiency of user task execution under LMM-MMS allocation, this experiment evaluated the user job completion rate under different user sizes, where the user completion rate refers to the ratio of the number of users completing the task to the number of all users. Figure 5 illustrates that LMM-MMS outperformed DRF and AF for user task completion rate unless the resource was saturated.
The experimental results strongly demonstrate the effectiveness of the proposed max–min share-based resource allocation mechanism in improving the task completion ratio, especially in complex scenarios with bounded task number constraints and a large number of users.

5.6. Sharing Incentive

In our final experiment, we evaluated the sharing incentive property of LMM-MMS. As previously demonstrated in Section 4.2, LMM-MMS satisfies this property, which ensures that the allocations for each user are at least as favorable as what they would receive through an equal division of the available resources. To achieve this, we calculated task completion under a basic allocation where each user i received exactly 1 / n of every resource from the data center, enabling them to execute m i n ( m i n j C n d i j , B i ) tasks. The completion ratio achieved through this elementary allocation (EA) was then compared against the results obtained using LMM-MMS allocation. The cumulative distribution function (CDF) outcomes from 100 experimental runs with 100 and 300 users are presented in Figure 6. Figure 6 demonstrates that allocations via LMM-MMS were consistently preferred by all users when compared to executing tasks within dedicated resource pools. This further validated that LMM-MMS satisfies the sharing incentive property.
The above experimental results show that compared with the other two mechanisms, the LMM-MMS mechanism had significant advantages in sharing degree distribution, see Figure 6. The experimental results strongly demonstrate the effectiveness of the proposed max–min share-based resource allocation mechanism in improving resource utilization, while maintaining reasonable fairness.

6. Conclusions and Future Work

In this paper, we proposed a polynomial-time lexicographic Maximin Share-based (LMM-MMS) fair allocation mechanism. We showed that LMM-MMS satisfies PE, SI, EF, and GSP properties. Our large-scale simulation, driven by Alibaba, showed that, compared to traditional fair allocation mechanisms such as DRF and AF, LMM-MMS achieved better results for resource utilization and the completion rate of user jobs over other mechanisms. In addition, LMM-MMS satisfied the property of sharing incentive in all cases.
As mentioned in [23], the MMS-based mechanism can satisfy PE, SI, and EF1 in the indivisible case. It would be interesting to design an efficient mechanism to find a solution satisfying the above three properties with a bounded number and indivisible tasks. In addition, the LMM-MMS mechanism can solve the static fair resource allocation problem, while cloud computing environments typically experience dynamic resource fluctuations due to node failures or elastic scaling. In the future, we will study the dynamic mechanism to solve the fair allocation problem and ensure high task completion rates, while maintaining fairness. Such extensions would further enhance the practical applicability of our approach in real-world cloud computing systems.

Author Contributions

Conceptualization, J.L.; Methodology, J.L.; Writing—Original draft preparation, J.L.; Software, H.W.; Visualization, H.W.; Writing—Reviewing, J.W.; Simulation, J.W.; Writing—Reviewing, Y.Z. All authors have read and agreed to the published version of this manuscript.

Funding

The work was supported in part by the National Natural Science Foundation of China [Nos 61662088, 61762091, 62062065, and 62362043] and the Open Foundation of Yunnan Key Laboratory of Computer Technologies Application under [Nos 2022201, CB23031D020A].

Data Availability Statement

All data are contained within the article. If you need the source code, please contact the corresponding author to apply and it will be provided after approval.

Acknowledgments

Throughout the submission process, we were very grateful for the patient guidance of editors and reviewers. We thank our colleagues and experts for their guidance and support.

Conflicts of Interest

The authors declare no competing interests.

References

  1. Wang, W.; Liang, B.; Li, B. Multi-resource fair allocation in heterogeneous cloud computing systems. IEEE Trans. Parallel Distrib. Syst. 2014, 26, 2822–2835. [Google Scholar] [CrossRef]
  2. Ghodsi, A.; Zaharia, M.; Hindman, B.; Konwinski, A.; Shenker, S.; Stoica, I. Dominant resource fairness: Fair allocation of multiple resource types. In Proceedings of the 8th USENIX Symposium on Networked Systems Design and Implementation (NSDI 11), Boston, MA, USA, 30 March–1 April 2011. [Google Scholar]
  3. Meskar, E.; Liang, B. MAGIKS: Fair multi-resource allocation game induced by Kalai-Smorodinsky bargaining solution. IEEE Open J. Commun. Soc. 2022, 3, 797–810. [Google Scholar] [CrossRef]
  4. Sadok, H.; Campista, M.E.M.; Costa, L.H.M. Stateful DRF: Considering the past in a multi-resource allocation. IEEE Trans. Comput. 2020, 70, 1094–1105. [Google Scholar] [CrossRef]
  5. Li, B.; Li, M.; Zhang, R. Fair scheduling for time-dependent resources. Adv. Neural Inf. Process. Syst. 2021, 34, 21744–21756. [Google Scholar]
  6. Zhang, J.; Chi, L.; Xie, N.; Yang, X.; Zhang, X.; Li, W. Strategy-proof mechanism for online resource allocation in cloud and edge collaboration. Computing 2022, 104, 383–412. [Google Scholar] [CrossRef]
  7. Zhang, X.; Li, J.; Li, G.; Li, W. Generalized asset fairness mechanism for multi-resource fair allocation mechanism with two different types of resources. Clust. Comput. 2022, 25, 3389–3403. [Google Scholar] [CrossRef]
  8. Li, X.; Li, W.; Zhang, X. Multiresource fair allocation with time window constraints. J. Supercomput. 2023, 79, 15927–15954. [Google Scholar] [CrossRef]
  9. Fallah, A.; Jordan, M.; Ulichney, A. Fair allocation in dynamic mechanism design. Adv. Neural Inf. Process. Syst. 2024, 37, 125935–125966. [Google Scholar]
  10. Fikioris, G.; Agarwal, R.; Tardos, É. Incentives in dominant resource fair allocation under dynamic demands. In Proceedings of the International Symposium on Algorithmic Game Theory, Amsterdam, The Netherlands, 3–6 September 2024; Springer: Cham, Switzerland, 2024; pp. 108–125. [Google Scholar]
  11. Dolev, D.; Feitelson, D.G.; Halpern, J.Y.; Kupferman, R.; Linial, N. No justified complaints: On fair sharing of multiple resources. In Proceedings of the 3rd Innovations in Theoretical Computer Science Conference, Cambridge, MA, USA, 8–10 January 2012; pp. 68–75. [Google Scholar]
  12. Meskar, E.; Liang, B. Fair multi-resource allocation in heterogeneous servers with an external resource type. IEEE/ACM Trans. Netw. 2022, 31, 1244–1262. [Google Scholar] [CrossRef]
  13. Budish, E. The combinatorial assignment problem: Approximate competitive equilibrium from equal incomes. J. Political Econ. 2011, 119, 1061–1103. [Google Scholar] [CrossRef]
  14. Guo, H.; Deng, B.; Li, W. Multi-resource maximin share fair allocation in the cloud-edge collaborative computing system with bandwidth demand compression. Clust. Comput. 2025, 28, 98. [Google Scholar] [CrossRef]
  15. Kurokawa, D.; Procaccia, A.D.; Wang, J. Fair enough: Guaranteeing approximate maximin shares. J. ACM (JACM) 2018, 65, 1–27. [Google Scholar] [CrossRef]
  16. Guo, H.; Li, W. Dynamic Multi-Resource Fair Allocation with Elastic Demands. J. Grid Comput. 2024, 22, 35. [Google Scholar] [CrossRef]
  17. Ghodsi, A.; Zaharia, M.; Shenker, S.; Stoica, I. Choosy: Max-min fair sharing for datacenter jobs with constraints. In Proceedings of the 8th ACM European Conference on Computer Systems, Prague, Czech Republic, 15–17 April 2013; pp. 365–378. [Google Scholar]
  18. Li, W.; Liu, X.; Zhang, X.; Zhang, X. Dynamic fair allocation of multiple resources with bounded number of tasks in cloud computing systems. Multiagent Grid Syst. 2015, 11, 245–257. [Google Scholar] [CrossRef]
  19. Tang, S.; Niu, Z.; He, B.; Lee, B.S.; Yu, C. Long-term multi-resource fairness for pay-as-you use computing systems. IEEE Trans. Parallel Distrib. Syst. 2018, 29, 1147–1160. [Google Scholar] [CrossRef]
  20. Li, W.; Liu, X.; Zhang, X.; Zhang, X. Multi-resource fair allocation with bounded number of tasks in cloud computing systems. In Proceedings of the Theoretical Computer Science: 35th National Conference, NCTCS 2017, Wuhan, China, 14–15 October 2017; Springer: Singapore, 2017; pp. 3–17. [Google Scholar]
  21. Parkes, D.C.; Procaccia, A.D.; Shah, N. Beyond dominant resource fairness: Extensions, limitations, and indivisibilities. ACM Trans. Econ. Comput. (TEAC) 2015, 3, 1–22. [Google Scholar] [CrossRef]
  22. Li, X.; Hu, G.; Li, W.; Zhang, X. Fair multiresource allocation with access constraint in cloud-edge systems. Future Gener. Comput. Syst. 2024, 159, 395–410. [Google Scholar] [CrossRef]
  23. Deng, B.; Li, W. Maximin share based mechanisms for multi-resource fair allocation with divisible and indivisible tasks. In Proceedings of the National Conference of Theoretical Computer Science, Changchun, China, 29–31 July 2022; Springer: Singapore, 2022; pp. 263–272. [Google Scholar]
  24. Megiddo, N. Optimal flows in networks with multiple sources and sinks. Math. Program. 1974, 7, 97–107. [Google Scholar] [CrossRef]
  25. Blum, M.; Floyd, R.W.; Pratt, V.R.; Rivest, R.L.; Tarjan, R.E. Time bounds for selection. J. Comput. Syst. Sci. 1973, 7, 448–461. [Google Scholar] [CrossRef]
  26. Alibaba. Alibaba Cluster Trace (2018). 2018. Available online: https://github.com/alibaba/clusterdata/tree/master/cluster-trace-v2018 (accessed on 20 January 2025).
Figure 1. Distribution of task demands.
Figure 1. Distribution of task demands.
Mathematics 13 02214 g001
Figure 2. The resource utilization under different user requirements.
Figure 2. The resource utilization under different user requirements.
Mathematics 13 02214 g002
Figure 3. The resource utilization under different resource capacities.
Figure 3. The resource utilization under different resource capacities.
Mathematics 13 02214 g003
Figure 4. The resource utilization under different workloads.
Figure 4. The resource utilization under different workloads.
Mathematics 13 02214 g004
Figure 5. The completion rate of user jobs under different user scales.
Figure 5. The completion rate of user jobs under different user scales.
Mathematics 13 02214 g005
Figure 6. The task completion ratio under different user requirement scales for Alibaba traces. The average and standard deviation are represented by μ .
Figure 6. The task completion ratio under different user requirement scales for Alibaba traces. The average and standard deviation are represented by μ .
Mathematics 13 02214 g006
Table 1. Table of mechanism comparisons.
Table 1. Table of mechanism comparisons.
MechanismBounded Number of TasksComplexityHigh Resource UtilizationProperty
AF [7]×Non-polynomial×PE, SI, EF, GSP
DRF [2]×Non-polynomialPE, SI, EF, GSP
CMMF [17]×Non-polynomial×SI, GSP
H-MRF [19]×Non-polynomialPE, SI, GSP
DRFB [18] O ( n 2 l o g n ) SI, GSP
DRFH [1]×Non-polynomialPE, EF
LMMNS [20] O ( n ) EF, GSP
Sequential Minmax [21]× O ( n 2 m / b * ) ×PE, SI, EF1
MMS-ED [16]Non-polynomialPE, SI, EF, GSP
Matching-BagFalling [5]×Non-polynomial×PE
Dynamic MMF [10]×Non-polynomialPE, SI, EF
MMS-BC [14]×Non-polynomialPE, SI, EF, GSP
MAGIKS [3]× O ( n ) ×PE, SI, EF
DRFTW [8]×Non-polynomialPE, SI, EF, GSP
SDRF [4]× O ( n l o g n ) PE, SI, GSP
TSF-CE [22] O ( n 8 l o g n U ) PE, SI, EF, GSP
TSF-ER [12] O ( n 8 l o g n U ϵ ) PE, SI, EF, GSP
LMM-MMS O ( n ) PE, SI, EF, GSP
Note: In Sequential Minmax [21], b i r is the proportion of resource r required by agent i to execute an instance of a task. b * = m i n i N m a x r R b i r ; that is, 1 / b * is an upper bound on the number of bundles that can be allocated to an agent.
Table 2. Symbols.
Table 2. Symbols.
SymbolDescription
C ( c 1 , c 2 , , c m ) T The capacity vector of all resources
D i ( d i 1 , d i 2 , , d i m ) T The resource demand vector for each user i
A i ( a i 1 , a i 2 , , a i m ) T The resource allocation vector of user i
A The set of all feasible allocations
B i The bounded number of tasks submitted by the user i
θ ( θ 1 , θ 2 , , θ n ) The max–min share ratio vector of all users
u i The utility of user i
M M S i The max–min share of user i
x i The maximum (fractional) number of tasks user i can process
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

Li, J.; Wang, H.; Wang, J.; Zhang, Y. Max–Min Share-Based Mechanism for Multi-Resource Fair Allocation with Bounded Number of Tasks in Cloud Computing System. Mathematics 2025, 13, 2214. https://doi.org/10.3390/math13132214

AMA Style

Li J, Wang H, Wang J, Zhang Y. Max–Min Share-Based Mechanism for Multi-Resource Fair Allocation with Bounded Number of Tasks in Cloud Computing System. Mathematics. 2025; 13(13):2214. https://doi.org/10.3390/math13132214

Chicago/Turabian Style

Li, Jie, Haoyu Wang, Jianzhou Wang, and Yue Zhang. 2025. "Max–Min Share-Based Mechanism for Multi-Resource Fair Allocation with Bounded Number of Tasks in Cloud Computing System" Mathematics 13, no. 13: 2214. https://doi.org/10.3390/math13132214

APA Style

Li, J., Wang, H., Wang, J., & Zhang, Y. (2025). Max–Min Share-Based Mechanism for Multi-Resource Fair Allocation with Bounded Number of Tasks in Cloud Computing System. Mathematics, 13(13), 2214. https://doi.org/10.3390/math13132214

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