This Article 
 Bibliographic References 
 Add to: 
Fast Allocation of Processes in Distributed and Parallel Systems
February 1993 (vol. 4 no. 2)
pp. 164-174

MULTIFIT-COM, a static task allocator which could be incorporated into an automatedcompiler/linker/loader for distributed processing systems, is presented. The allocator usesperformance information for the processes making up the system in order to determine anappropriate mapping of tasks onto processors. It uses several heuristic extensions of theMULTIFIT bin-packing algorithm to find an allocation that will offer a high systemthroughput, taking into account the expected execution and interprocessorcommunication requirements of the software on the given hardware architecture.Throughput is evaluated by an asymptotic bound for saturated conditions and under anassumption that only processing resources are required. A set of options are proposed foreach of the allocator's major steps. An evaluation was made on 680 small randomlygenerated examples. Using all the search options, an average performance difference ofjust over 1% was obtained. Using a carefully chosen small subset of only four options, afurther degradation of just over 1.5% was obtained. The allocator is also applied to adigital signal processing system consisting of 119 tasks to illustrate its clustering and loadbalancing properties on a large system.

[1] E. G. Coffman,Computer and Job Shop Scheduling Theory. New York: Wiley, 1976.
[2] E. G. Coffman Jr, M. R. Garey, and D. S. Johnson, "An application of bin-packing to multiprocessor scheduling,"SIAM J. Comput., vol. 7, pp. 1-17, Feb. 1978.
[3] S. H. Bokhari, "Partitioning problems in parallel pipelined and distributed computing,"IEEE Trans. Comput., vol. 37, pp. 48-57, Jan. 1988.
[4] K. Efe, "Heuristic models of task assignment scheduling in distributed systems,"IEEE Comput. Mag., pp. 50-56, June 1982.
[5] E. A. Williams, "Design, analysis and implementation of distributed systems from a performance perspective," Ph.D. dissertation, Univ. of Texas at Austin, 1983.
[6] H. Stone, "Multiprocessor scheduling with the aid of network flow algorithms,"IEEE Trans. Software Eng., pp. 85-93, Jan. 1977.
[7] W. W. Chu, L. J. Holloway, M. T. Lan. and K. Efe, "Task allocation in distributed data processing,"IEEE Comput. Mag., pp. 57-69, Nov. 1980.
[8] W. W. Chu and Kin K. Leung, "Task response time model and its applications for real-time distributed processing systems," inProc. Real-Time Syst. Symp., Austin, TX, Dec. 1984, pp. 225-236.
[9] V. M. Lo, "Heuristic algorithms for task assignment in distributed systems,"IEEE Trans. Comput., pp. 1384-1397, Nov. 1988.
[10] R. Constantine, "Analytic performance of software pipelines with rendezvous and communicating tasks," Master's thesis, Dep. of Systems and Comput. Eng., Carleton Univ., 1989.
[11] C. M. Woodside, J. E. Neilson, J. W. Miernik, D. C. Petriu, and R. Constantin, "Performance of concurrent rendezvous systems with complex pipeline structures," inProc. Fourth Int. Conf. Modelling Techniques and Tools for Comput. Perform Eval., Sept. 1988, pp. 361-378.
[12] M. R. Garey, R. L. Graham, and J. D. Ullman, "Worst case analysis of memory allocation algorithms, " inProc. Fourth Annu. ACM Symp. Theory of Comput., 1972, pp. 143-150.
[13] D. K. Friesen and M. A. Langston, "Evaluation of a multifit-based scheduling algorithm,"J. Algorithms, no. 7, pp. 35-59, 1986.

Index Terms:
Index Termsdistributed systems; parallel systems; MULTIFIT-COM; static task allocator; automatedcompiler/linker/loader; distributed processing systems; bin-packing algorithm; high system throughput; interprocessor communication; asymptotic bound; digital signal processing system; clustering; load balancing; distributed processing; operations research; parallel processing; program compilers; resource allocation
C.M. Woodside, G.G. Monforton, "Fast Allocation of Processes in Distributed and Parallel Systems," IEEE Transactions on Parallel and Distributed Systems, vol. 4, no. 2, pp. 164-174, Feb. 1993, doi:10.1109/71.207592
Usage of this product signifies your acceptance of the Terms of Use.