Skip to main content

Concurrent data structures

  • Computer Architecture, Concurrency, Parallelism, Communication And Networking
  • Conference paper
  • First Online:
  • 151 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 468))

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.

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

6. References

  1. Dowsing R.D., “Introduction to Concurrency using Occam”, Van Nostrand Reinhold, 1988.

    Google Scholar 

  2. Colbrook A., Smythe C., “Efficient Implementation of Search Trees on Parallel Distributed Memory Architectures”, to appear IEE Proceedings Part E.

    Google Scholar 

  3. Quinn M.J., “Designing Efficient Algorithms for Parallel Computers” McGraw-Hill, New York, 1987.

    Google Scholar 

  4. Comer D., “The Ubiquitous B-Tree”, Computer Surveys, 11(2), pp121–137, 1979.

    Google Scholar 

  5. Knuth D.E., “The Art of Computer Programming vol III: Searching and Sorting”, Addison-Wesley, Reading, MA, 1969.

    Google Scholar 

  6. Bentley J.L., Kung H.T., “A Tree Machine for Searching Problems”, Proceedings of the International Conference on Parallel Processing, IEEE, New York, 1979.

    Google Scholar 

  7. Song S.W., “A Highly Concurrent Tree Machine for Database Applications”, Proceeding of the International Conference on Parallel Processing, IEEE, New York, 1980.

    Google Scholar 

  8. Ottman T.A., Rosenberg A.L., Stockmeyer L.J., “A Dictionary Machine (for VLSI)”, IEEE Transactions on Computers, C-31(9), pp892–897, 1984.

    Google Scholar 

  9. 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.

    Google Scholar 

  10. Atallah M.J., Kosaraju S.R., “A Generalized Dictionary Machine for VLSI”, IEEE Transactions on Computers, C-34(2), pp151–155, 1985.

    Google Scholar 

  11. Somani A., Agarwal V., “An Efficient Unsorted VLSI Dictionary Machine”, IEEE Transactions on Computers, C-34(9), pp841–852, 1985

    Google Scholar 

  12. 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.

    Google Scholar 

  13. 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.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. 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.

    Google Scholar 

  16. Walden M., Sere K., “Free Text Retrieval on Transputer Networks”, Microprocessors & Microsystems 13(3), pp.179–187, 1989.

    Google Scholar 

  17. Inmos Ltd, “Transputer Reference Manual”, Prentice Hall, London, 1986.

    Google Scholar 

  18. 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.

    Google Scholar 

  19. 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.

    Google Scholar 

  20. Harp J.G., “Phase 2 of the Reconfigurable Transputer Project — PT85”, Proceedings of Esprit'87—Achievements and Impact, pp583–591, 1987.

    Google Scholar 

  21. 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.

    Google Scholar 

  22. Nicole D.A., “Reconfigurable Transputer Processor Architectures”, Proceedings 22nd Annual Hawaii Conference on Systems Sciences, 1, pp365–374, IEEE, Washington DC, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

S. G. Akl F. Fiala W. W. Koczkodaj

Rights and permissions

Reprints 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

Publish with us

Policies and ethics