### Optimal task allocation in hypercube multiprocessor ensembles

C.C. Price, M. Salama
1993 Computers and Mathematics with Applications
Criteria are established to determine the optimal policy for allocating a set of uniform tasks onto a multiprocessor hypercube ensemble. It is shown that the optimal policy depends on the ratio of computation to intertask communication required by the distributed program, and that based on this ratio, tasks should be placed either all on one processor or uniformly distributed over the largest possible hypercube. the uniform allocation, say for np = 4, occurs by moving one task from one
more » ... (e.g., Processor 3) to another processor (e.g., Processor 1). The resulting schedule, Si, which is governed by Processor 1 is now greater than SZ, and is given by: 5'4 = (2 + 1)~ + [4(e)" +2(e) -21 c. For Processors 2 and 4, the schedule length remains unchanged. The processor with the longest task execution schedule is also the one that incurs the greatest communication cost, and is therefore the one that determines the schedule length for the entire task system. This is in fact just an illustration of the following more general theorem. THEOREM 2. If all np processors within a p-order hypercube axe to be utilized by an m task system, then the schedule resulting from uniform distribution of the tasks is shorter than or equal to that associated with any non-uniform allocation. PROOF. Since no node is unique in a hypercube ensemble, one may arbitrarily select any node, j*, to be the most heavily loaded processor in a non-uniform allocation policy. Let b = (m/np) be the number of tasks in a uniform allocation, and let t be the number of extra tasks on Processor j*. Recall that the greatest distance djep between Processor j* and any of the remaining (np -1) processors is equal to the hypercube order p, and that there is only one processor located at this p distance, while all other (np -2) processors are located at distances 1 5 dj*T < p. In the best possible non-uniform allocation scenario, all extra t 5 b tasks on Processor j* are taken from the processor at the greatest distance dj-,. = p from j*, with the hope of decreasing the communication costs over that distance. The schedule length for this non-uniform allocation is: S* = (b+t)[a:+K,bc-ptc]. Comparing the schedule lengths S, and S* for the uniform and non-uniform allocations, the inequality S, < S holds whenever