Efficient algorithms for dynamic allocation of distributed memory

被引:1
作者
Leighton, T [1 ]
Schwabe, EJ
机构
[1] MIT, Dept Math, Cambridge, MA 02139 USA
[2] MIT, Comp Sci Lab, Cambridge, MA 02139 USA
[3] Depaul Univ, Sch CTI, Chicago, IL 60604 USA
[4] Northwestern Univ, Evanston, IL 60208 USA
关键词
dynamic allocation; memory allocation; parallel and distributed systems; allocation algorithms;
D O I
10.1007/PL00009275
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We consider the problem of dynamically allocating and deallocating local memory resources among multiple users in a parallel or distributed system. Given a group of independent users and a collection of interconnected local memory devices, we want to render the fragmentation of the memory resources irrelevant by allowing any user to allocate space for his or her purposes as long as there is space available anywhere in the system. In effect, we would like it to appear to the users as though they are allocating memory from a single central pool of memory, even though the space is distributed throughout the system. Our goal is to devise an on-line allocation algorithm that minimizes two cost measures: first, the fraction? of unused space, which arises due to fragmentation of the memory; second, the slowdown needed by the system to service user requests, which arises due to the contention for access to the memory devices. We solve this distributed dynamic allocation problem in near-optimal Fashion by devising an algorithm that allows the memory to be used to 100% of capacity despite the fragmentation and guarantees that service delays will always be within a constant factor of optimal. The algorithm is completely on-line (no foreknowledge of user activity is assumed) and can accommodate any sequence of allocations and deallocations by the users that does not violate global memory bounds. We also consider the distributed dynamic allocation problem in the more restrictive setting where the local memory devices are connected by a low-degree fixed-connection network, rather than being fully interconnected. In this case, communication costs must be more explicitly considered in our allocation algorithms. We give allocation algorithms for butterfly and hypercube networks, and prove necessary and sufficient conditions on the total amount of memory space needed for near-optimal algorithms to exist.
引用
收藏
页码:139 / 171
页数:33
相关论文
共 14 条
  • [1] EIGENVALUES AND EXPANDERS
    ALON, N
    [J]. COMBINATORICA, 1986, 6 (02) : 83 - 96
  • [2] [Anonymous], ACM SURV
  • [3] Bassalygo L. A., 1981, Problems of Information Transmission, V17, P206
  • [4] Borodin A., 1982, P 14 ANN ACM S THEOR, P338
  • [5] Ford LR, 1956, CAN J MATH, V8, P399, DOI [10.4153/CJM-1956-045-5, DOI 10.4153/CJM-1956-045-5]
  • [6] DYNAMIC FILE MIGRATION IN DISTRIBUTED COMPUTER-SYSTEMS
    GAVISH, B
    SHENG, ORL
    [J]. COMMUNICATIONS OF THE ACM, 1990, 33 (02) : 177 - 189
  • [7] KOCH RR, 1997, J ACM, V44, P57
  • [8] Efficient LRU-based buffering in a LAN remote caching architecture
    Leff, A
    Wolf, JL
    Yu, PS
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1996, 7 (02) : 191 - 206
  • [9] MELHORN K, 1984, ACTA INFORM, V21, P339
  • [10] THE TOKEN DISTRIBUTION PROBLEM
    PELEG, D
    UPFAL, E
    [J]. SIAM JOURNAL ON COMPUTING, 1989, 18 (02) : 229 - 243