Abstract
Given two sorted arrays A = (a 1,a 2, ⋯ ,a n ) and B = (b 1,b 2, ⋯ ,b n ) of records such that (1) the n records are sorted according to one field which is called the key, and (2) the values of the keys are serial numbers. Merging data records has many applications in computer science especially in database. We develop an algorithm that runs in O(logn) time on EREW PRAM to merge two sorted arrays of records using \(\frac{n}{\log{n}}\) processors even the keys of the data records are repeated. The algorithm is cost-optimal, deterministic, stable and uses linear number of space.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Akl, S.: Parallel Sorting Algorithms. Academic Press Inc., London (1985)
Akl, S.: Parallel Computation: Models and Methods. Prentice Hall, Upper Saddle River (1997)
Akl, S., Santoro, N.: Optimal Parallel Merging and Sorting Without Memory Conflicts. IEEE Transactions on Computers 36, 1367–1369 (1987)
Bahig, H.: Parallel Merging with Restriction. The Journal of Supercomputing 43(1), 99–104 (2008)
Bahig, H., Bahig, H.: Merging on PRAM. International Journal of Computers and Applications 30(1), 51–55 (2008); Special Issue in High Performance Computing Architectures
Bang-Jensen, J., Huang, J., Ibarra, L.: Recognizing and Representing Proper Interval Graphs in Parallel Using Merging and Sorting. Discrete Applied Mathematics 155(4), 442–456 (2007)
Berkman, O., Vishkin, U.: On Parallel Integer Merging. Information and Computation 106, 266–285 (1993)
Borodin, A., Hopcroft, J.: Routing, Merging, and Sorting on Parallel Models of Computation. Journal of Computer and System Science 30(1), 130–145 (1985)
Cormen, T., Leiserson, C., Rivest, R.: Introduction to Algorithms. MIT Press, Cambridge (1990)
Deo, N., Jain, A., Medidi, M.: An Optimal Parallel Algorithm for Merging using Multiselection. Information Processing Letters 50(2), 81–88 (1994)
Deo, N., Sarak, D.: Parallel Algorithms for Merging and Sorting. Information Sciences 51, 121–131 (1990)
Gerbessiotis, A., Siniolakis, C.: Merging on the BSP Model. Parallel Computing 27(6), 809–822 (2001)
Hagerup, T., Kutylowski, M.: Fast Integer Merging on the EREW PRAM. Algorithmca 17, 55–66 (1997)
Hagerup, T., Rub, C.: Optimal Merging and Sorting on the EREW PRAM. Information Processing Letter 33(4), 181–185 (1989)
Karp, R., Ramachandran, V.: Parallel Algorithms for Shared-Memory Machines. In: Handbook of Theoretical Computer Science, vol. A, pp. 870–941 (1990)
Katsinis, C.: Merging, Sorting and Matrix Operations on the SOME-Bus Multiprocessor Architecture. Future Generation Computer Systems 20(4), 643–661 (2004)
Knuth, D.: The Art of Computer Programming: Sorting and Searching. Addison-Wesley, Reading (1973)
Kruskal, C.: Searching, Merging, and Sorting in Parallel Computation. IEEE Transaction on Computers 32(10), 942–946 (1983)
Kruskal, C., Rudolph, L., Snir, M.: A Complexity Theory of Efficient Parallel Algorithms. In: Handbook of Theoretical Computer Science, pp. 95–132 (1990)
Liu, G., Chen, H.: Parallel Mering of Lists in Database Mangement System. Information Systems 13(4), 423–428 (1988)
Mach, W., Schikuta, E.: Parallel database sort and join operations revisited on grids. In: Perrott, R., Chapman, B.M., Subhlok, J., de Mello, R.F., Yang, L.T. (eds.) HPCC 2007. LNCS, vol. 4782, pp. 216–227. Springer, Heidelberg (2007)
Matias, Y., Sega, E., Vitter, J.S.: Efficient Bundle Sorting. SIAM J. Computing 36(2), 394–410 (2006)
Merrett, T.: Relational Information Systems. Reston, Va. (1984)
Shiloach, Y., Vishkin, U.: Finding the Maximum, Merging, and Sorting in a Parallel Computational Models. Journal of Algorithms 2, 88–102 (1981)
Taniar, D., Rahayu, W.: Parallel Double Sort-Merge Algorithm for Object-Oriented Collection Join Queries. In: Proceedings of International Conference on High Performance Computing HPC ASIA’97. IEEE Computer Society Press, Seoul (1997)
Valduriez, P., Gardarin, G.: Join and Semijoin Algorithms for Multiprocessors Database Machines. ACM Transaction Database Systems 9, 133–161 (1984)
Varman, P., Iyer, B., Haderle, B., Dunn, S.: Parallel Merging: Alogrithm and Implementation Results. Parallel Computing 15, 165–177 (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bahig, H.M. (2010). Merging Data Records on EREW PRAM. In: Hsu, CH., Yang, L.T., Park, J.H., Yeo, SS. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2010. Lecture Notes in Computer Science, vol 6082. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13136-3_40
Download citation
DOI: https://doi.org/10.1007/978-3-642-13136-3_40
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13135-6
Online ISBN: 978-3-642-13136-3
eBook Packages: Computer ScienceComputer Science (R0)