Efficient Allocation of Resources Under Group Dependencies and Availability Uncertainties
摘要
In this work, we introduce and study a novel multiplicative group knapsack algorithm for resources allocation considering group dependencies between their parameters. Distributed and high-performance computing systems in real-world scenarios frequently face uncertainty in resource availability. This uncertainty arises from unpredictable job execution times, inaccuracies in runtime estimates, and various global and local utilization factors. Consequently, each resource can be characterized by an availability function over time, which can be incorporated as a parameter in scheduling decisions. Typically, a single parallel job concurrently requires multiple resources, thus forming a group of resources that share associated probabilities for usage and release events. The novelty of the proposed approach is an efficient algorithm considering groupings of resources and their common availability history and events. The proposed group knapsack algorithm is studied and compared against brute force, branch and bounds and greedy approaches and demonstrates higher computational efficiency and practical applicability.