DocumentCode
1806283
Title
Fast optimal nonconcave resource allocation
Author
Pan Lai ; Rui Fan
Author_Institution
Sch. of Comput. Eng., Nanyang Technol. Univ., Singapore, Singapore
fYear
2015
fDate
April 26 2015-May 1 2015
Firstpage
1508
Lastpage
1516
Abstract
Efficient use of shared resources is a key problem in a wide range of computer systems, from cloud computing to multicore processors. Optimized allocation of resources among users can result in dramatically improved overall system performance. Resource allocation is in general NP-complete, and past works have mostly focused on studying concave performance curves, applying heuristics to nonconcave curves, or finding optimal solutions using slow dynamic programming methods. These approaches have drawbacks in terms of generality, accuracy and efficiency. In this paper, we observe that realistic performance curves are often not concave, but rather can be broken into a small number of concave or convex segments. We present efficient algorithms for optimal and approximately optimal resource allocation leveraging this idea. We also introduce several algorithmic techniques that may be of independent interest. Our optimal algorithm runs in O(snα(m)m(log m)2) time, and our approximation algorithm finds a 1 - ε optimal allocation for any ε > 0 in O(s/ε α(n/ε)n2 log n/ε log m) time; here, s is the number of segments, n the number of processes, m the amount of shared resource, and α is the inverse Ackermann function that is ≤ 4 in practice. Existing exact and approximation algorithms have O(nm2) and O(n2 m/ε) running times, resp., so our algorithms are much faster in the practical case where n <;<; m. Experiments show that our algorithms are 215 times faster than dynamic programming for finding optimal solutions when m = 1M, and produce solutions with 33% better performance than greedy algorithms.
Keywords
cloud computing; computational complexity; dynamic programming; multiprocessing systems; resource allocation; storage allocation; NP-complete problem; O(n2 m/ε) running time; O(nm2) running time; O(s/ε α(n/ε)n2 log n/ε log m) time; O(snα(m)m(log m)2) time; cloud computing; concave performance curve; dynamic programming method; inverse Ackermann function; multicore processor; optimal nonconcave resource allocation; realistic performance curve; Approximation algorithms; Approximation methods; Computers; Dynamic programming; Heuristic algorithms; Resource management; Throughput; Resource allocation; approximation algorithms; optimization;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Communications (INFOCOM), 2015 IEEE Conference on
Conference_Location
Kowloon
Type
conf
DOI
10.1109/INFOCOM.2015.7218529
Filename
7218529
Link To Document