Abstract
Several techniques for the storage of large data structures in main memory have been proposed and, although none is optimal in every situation, tree structures have become a commonly adopted algorithm. A scheme for maintaining a balanced search tree on a distributed memory parallel architecture is described. A general 2P−2−2P (for integer P≥3) search tree is introduced with a linear array of up to [log2N/(P−2)]+1 processors being used to implement such a search tree. As many as ([log2N/(P−2)]+1)/2 operations can execute concurrently. Several examples of 2P−2−2P search trees have been implemented on an array of transputer processors.
The search structures developed were highly flexible allowing variations in the throughput and response time to be achieved by simple changes to the transputer architecture or the value of P. Applications of these search structures presently in use or under consideration include neural networks, parallel simulation systems, distributed database applications and the migration of sequential systems onto parallel architectures.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Preview
Unable to display preview. Download preview PDF.
6. References
Dowsing R.D., “Introduction to Concurrency using Occam”, Van Nostrand Reinhold, 1988.
Colbrook A., Smythe C., “Efficient Implementation of Search Trees on Parallel Distributed Memory Architectures”, to appear IEE Proceedings Part E.
Quinn M.J., “Designing Efficient Algorithms for Parallel Computers” McGraw-Hill, New York, 1987.
Comer D., “The Ubiquitous B-Tree”, Computer Surveys, 11(2), pp121–137, 1979.
Knuth D.E., “The Art of Computer Programming vol III: Searching and Sorting”, Addison-Wesley, Reading, MA, 1969.
Bentley J.L., Kung H.T., “A Tree Machine for Searching Problems”, Proceedings of the International Conference on Parallel Processing, IEEE, New York, 1979.
Song S.W., “A Highly Concurrent Tree Machine for Database Applications”, Proceeding of the International Conference on Parallel Processing, IEEE, New York, 1980.
Ottman T.A., Rosenberg A.L., Stockmeyer L.J., “A Dictionary Machine (for VLSI)”, IEEE Transactions on Computers, C-31(9), pp892–897, 1984.
Bonuccelli M.A., Lodi E., Luccio F., Maestrini P., Pagli L., “A VLSI Tree Machine for Relational Data Bases”, Proceeding of the 10th ACM International Symposium on Computer Architecture, pp67–73, IEEE, 1983.
Atallah M.J., Kosaraju S.R., “A Generalized Dictionary Machine for VLSI”, IEEE Transactions on Computers, C-34(2), pp151–155, 1985.
Somani A., Agarwal V., “An Efficient Unsorted VLSI Dictionary Machine”, IEEE Transactions on Computers, C-34(9), pp841–852, 1985
Chang J.H., Ibarra O.H., Chung M.J., Rao K.K., “Systolic Tree Implementation of Data Structures”, IEEE Transactions on Computers, C-37(6), pp727–735, 1988.
Carey M.J., Thompson C.D., “An Efficient Implementation of Search Trees on [LgN+1] Processors”, IEEE Transactions on Computers, C-33(11), pp1038–1041, 1984.
Tanaka Y., Nozaka Y., Masuyama A., “Pipeline Searching and Sorting Modules as Components of a Data Flow Database Computer”, Proceedings of the International Federation for Information Processing, pp427–432, North-Holland, Amsterdam, 1980.
Fisher A.L., “Dictionary Machines With a Small Number of Processors”, Proceedings of the 11th Annual International Symposium on Computer Architecture, pp151–156, IEEE, New York, 1984.
Walden M., Sere K., “Free Text Retrieval on Transputer Networks”, Microprocessors & Microsystems 13(3), pp.179–187, 1989.
Inmos Ltd, “Transputer Reference Manual”, Prentice Hall, London, 1986.
Green S.A., Paddon D.J., “An Extension of the Processor Farm Using a Tree Architecture”, Proceedings of 9th Occam User Group Technical Meeting, pp53–69, IOS, Amsterdam, 1988.
Guibas L.J., Sedgewick R., “A Dichromatic Framework for Balanced Trees”, Proceedings 19th Annual IEEE Computer Society Symposium of the Foundations of Computer Science, pp8–21, 1978.
Harp J.G., “Phase 2 of the Reconfigurable Transputer Project — PT85”, Proceedings of Esprit'87—Achievements and Impact, pp583–591, 1987.
Hey A.J.G., Pritchard D.J., “Parallel Applications on the RTP Supernode Machine”, Proceedings of the International Conference on Supercomputers 2, pp264–270, Supercomputing Institute, Florida, 1988.
Nicole D.A., “Reconfigurable Transputer Processor Architectures”, Proceedings 22nd Annual Hawaii Conference on Systems Sciences, 1, pp365–374, IEEE, Washington DC, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Colbrook, A., Smythe, C. (1991). Concurrent data structures. In: Akl, S.G., Fiala, F., Koczkodaj, W.W. (eds) Advances in Computing and Information — ICCI '90. ICCI 1990. Lecture Notes in Computer Science, vol 468. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53504-7_92
Download citation
DOI: https://doi.org/10.1007/3-540-53504-7_92
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53504-1
Online ISBN: 978-3-540-46677-2
eBook Packages: Springer Book Archive