This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Simulation Data Structures for Parallel Resource Management
July 1993 (vol. 19 no. 7)
pp. 672-686

The problem of resource management for many processor architectures can be viewed as the problem of simultaneously updating data structures that hold system state. An approach in which the possibility of using structures with weakened specifications is examined, is presented. Specifically, data structures that weaken the specification of a priority queue, permitting it to be updated simultaneously by multiple processes are introduced. Two structures, the concurrent heap and the software banyan are proposed, along with their associated algorithms for update. The algorithms are shown to possess attractive properties of simultaneous update and throughput. The results of simulation and actual implementations show that such data structures can improve the execution times of parallel algorithms quite significantly. These structures are proposed as possible basic building blocks for implementation of resource allocation in operating systems.

[1] A. V. Aho, J. E. Hopcroft, and J. D. Ullman,The Design and Analysis of Computer Algorithms. Menlo Park, CA: Addison-Wesley, 1974.
[2] F. Bastani, W. Hilal, and S. S. Iyengar, "Efficient abstract data type components for distributed and parallel systems,"IEEE Comput., pp. 33-44, Oct. 1987.
[3] R. Bayer and M. Schkolnick, "Concurrency of operations on B-trees"Acta Informatica, vol. 9, pp. 1-21, 1977.
[4] J. Biswas, "Techniques and data structures for parallel resource management" Ph.D. dissertation, Dep. Comput. Sci., Univ. of Texas at Austin, Dec. 1987.
[5] W. J. Dally, "A VLSI architecture for concurrent data structures," Ph.D. dissertation, Dep. Comput. Sci., California Instit. Technol., Jan. 1986.
[6] C. A. Ellis, "Concurrent search and insertion in 2-3 trees,"Acta Informatica, vol. 14, pp. 63-86, 1980.
[7] C. S. Ellis, "Extendible hashing for concurrent operations and distributed data," inProc. ACM Symp. Principles of Database Syst. (PODS), 1983, pp. 106-116.
[8] C. S. Ellis, "Distributed data structures, A case study,"IEEE Trans. Comput., vol. C-34, no. 12, pp. 1178-1185 Dec. 1985.
[9] L. R. Goke and G. J. Lipovski, "Banyan networks for partitioning multiprocessor systems," inProc. 1st Annu. Symp. Comput. Architecture, Dec. 1973, pp. 21-28.
[10] A. Gottlieb, B. D. Lubachevsky, and L. Rudolph, "Basic techniques for the efficient coordination of very large numbers of cooperating sequential processors,"ACM Trans. Programming Languages Syst., vol. 5, no. 2, pp. 164-189, Apr. 1993.
[11] H.T. Kung and J.T. Lehman, "Concurrent Manipulation of Binary Search Trees,"ACM Trans. Database Systems, Sept. 1980, pp. 354-382.
[12] U. Premkumar, "A theoretical basis for the analysis and partitioning of regular SW banyans," Ph.D. dissertation, UT Austin, 1981.
[13] V. N. Rao and V. Kumar, "Concurrent access of priority queues,"IEEE Trans. Comput., vol. 37, no. 12, pp. 1657-1665, Dec. 1988.
[14] P. M. Schwarz and A. Z. Spector, "Synchronization shared abstract types,"ACM Trans. Comput. Syst., Aug. 1984.
[15] A. Silberschatz and Z. Kedem, "Consistency in hierarchical database systems,"J. Ass. Comput. Mach., vol. 27, Jan. 1980.
[16] P.-C. Yew, N.-F. Tzeng, and D.H. Lawrie, "Distributing hot-spot addressing in large-scale multiprocessors,"IEEE Trans. Comput., vol. C- 36, pp. 388-395, Apr. 1987.
[17] W. E. Weihl, "Specification and implementation of atomic data types," Ph.D. dissertation, Massachusetts Instit. Technol., 1984. Available as Tech. Rep. MIT/LCS/TR 314.

Index Terms:
parallel resource management; processor architectures; data structures; system state; weakened specifications; priority queue; multiple processes; concurrent heap; software banyan; simultaneous update; parallel algorithms; resource allocation; operating systems; data structures; parallel algorithms; parallel programming; resource allocation
Citation:
J. Biswas, J.C. Browne, "Simulation Data Structures for Parallel Resource Management," IEEE Transactions on Software Engineering, vol. 19, no. 7, pp. 672-686, July 1993, doi:10.1109/32.238568
Usage of this product signifies your acceptance of the Terms of Use.