Locality-preserving hash functions for general purpose parallel computation
- A. Chin
- … show all 1 hide
Rent the article at a discountRent now
* Final gross prices may vary according to local VAT.Get Access
Consider the problem of efficiently simulating the shared-memory parallel random access machine (PRAM) model on massively parallel architectures with physically distributed memory. To prevent network congestion and memory bank contention, it may be advantageous to hash the shared memory address space. The decision on whether or not to use hashing depends on (1) the communication latency in the network and (2) the locality of memory accesses in the algorithm.
We relate this decision directly to algorithmic issues by studying the complexity of hashing in the Block PRAM model of Aggarwal, Chandra, and Snir, a shared-memory model of parallel computation which accounts for communication locality. For this model, we exhibit a universal family of hash functions having optimal locality. The complexity of applying these hash functions to the shared address space of the Block PRAM (i.e., by permuting data elements) is asymptotically equivalent to the complexity of performing a square matrix transpose, and this result is best possible for all pairwise independent universal hash families. These complexity bounds provide theoretical evidence that hashing and randomized routing need not destroy communication locality, addressing an open question of Valiant.
- A. Aggarwal, A. K. Chandra, and M. Snir, On communication latency in PRAM computations,Proc. First ACM Symp. on Parallel Algorithms and Architectures, 1989, pp. 11–21.
- A. Aggarwal, A. K. Chandra, and M. Snir, Communication complexity of PRAMs,Theoret. Comput. Sci. 71 (1990), 3–28. CrossRef
- A. Aggarwal and J. S. Vitter, The input/output complexily of sorting and related problems,Comm. ACM 31(9) (1988), 1116–1127. CrossRef
- W. Aiello, T. Leighton, B. Maggs, and M. Newman, Fast algorithms for bit-serial routing on a hypercube,Proc. 2nd Annual ACM Symp. on Parallel Algorithms and Architectures, 1990, pp. 55–64.
- J. L. Carter and M. N. Wegman, Universal classes of hash functions,J. Comput. System Sci. 18 (1979), 143–154. CrossRef
- A. Chin, Complexity issues in general-purpose parallel computation, D.Phil, thesis, Oxford University, 1991.
- A. Chin, Latency hiding for fault-tolerant PRAM computations,Proc. Internat. Conf. on Sets, Graphs and Numbers, D. Miklos, ed., North-Holland, Amsterdam, 1992.
- A. Chin, Permutations on the Block PRAM,Inform. Process. Lett. 45 (1993), 69–73. CrossRef
- R. Cole and O. Zajicek, The APRAM: incorporating asynchrony into the PRAM model,Proc. First Annual ACM Symp. on Parallel Algorithms and Architectures, 1989, pp. 169–178.
- M. Dietzfelberger and F. Meyer auf der Heide, How to distribute a dictionary in a complete network,Proc. 22nd Annual ACM Symp. on Theory Computing, 1990, pp. 117–127.
- R. W. Floyd, Permuting information in idealized two-level storage, inComplexity of Computer Calculations, R. Miller and J. Thatcher, eds., Plenum, New York, 1972, pp. 105–109.
- G. E. Forsythe and C. B. Moler,Computer Solution of Linear Algebraic Systems, Prentice-Hall, Englewood Cliffs, NJ, 1967.
- A. M. Gibbons and W. Rytter,Efficient Parallel Algorithms, Cambridge University Press, Cambridge, 1988.
- P. Gibbons, The asynchronous PRAM: a semi-synchronous model for shared memory MIMD machines, Ph.D. thesis, University of California at Berkeley, 1989.
- J. Håstad, T. Leighton, and M. Newman, Fast computation using faulty hypercubes,Proc. 21st Annual ACM Symp. on Theory of Computing, 1989, pp. 251–263.
- T. Heywood and S. Ranka, A practical hierarchical model of parallel computation: the model, Technical Report SU-CIS-91-06, Syracuse University, Syracuse, NY 10991.
- P. Kanellakis and A. Shvartsman, Efficient parallel algorithms can be made robust,Proc. 8th Annual ACM Symp. on Principles of Distributed Computing, 1989, pp. 211–222.
- A. Karlin and E. Upfal, Parallel hashing: an efficient implementation of shared memory,J. Assoc. Comput. Mach. 35 (1988), 876–892.
- R. M. Karp, M. Luby, and F. Meyer auf der Heide, Efficient PRAM simulation on a distributed memory machine,Proc. 24th Annual ACM Symp. on Theory of Computing, 1992, pp. 318–326.
- R. M. Karp and V. Ramachandran, Parallel algorithms for shared-memory machines,Handbook of Theoretical Computer Science (J. van Leeuwen, ed.), North-Holland, Amsterdam, 1990, pp. 869–942.
- Z. M. Kedem, K. V. Palem, and P. G. Spirakis, Efficient robust parallel computations,Proc. 22nd Annual ACM Symp. on Theory of Computing, 1990, pp. 138–148.
- F. T. Leighton and C. G. Plaxton, A (fairly) simple circuit that (usually) sorts,Proc. 31st Annual IEEE Symp. on Foundations of Computer Science, 1990, pp. 264–274.
- Y.-D. Lyuu, Fast fault-tolerant parallel communication and on-line maintenance using information dispersal,Proc. Second ACM Symp. on Parallel Algorithms and Architectures, 1990, pp. 378–387.
- W. F. McColl, General purpose parallel computing, inLectures on Parallel Computation, A. Gibbons and P. Spirakis, eds., Cambridge University Press, Cambridge, 1993, pp. 337–391.
- C. Martel, A. Park, and R. Subramonian, Optimal asynchronous algorithms for shared-memory parallel computers, Technical Report CSE-89-8, University of California at Davis, 1989.
- K. Mehlhorn and U. Vishkin, Randomized and deterministic simulations of PRAMs by parallel machines with restricted granularity of parallel memories,Acta Inform. 21 (1984), 339–374. CrossRef
- J. K. Mullin, A caution on universal classes of hash functions,Inform. Process. Lett. 37 (1991), 247–256. CrossRef
- N. Nishimura, Asynchronous shared memory parallel computation,Proc. Second Annual ACM Symp. on Parallel Algorithms and Architectures, 1990, pp. 76–84.
- A. G. Ranade, How to emulate shared memory,Proc. 28th Annual IEEE Symp. on Foundations of Computer Science, 1987, pp. 185–194.
- A. Siegel, On universal classes of fast high-performance hash functions, their time-space tradeoff, and their applications,Proc. 30th IEEE Symp. on Foundations of Computer Science, 1989, pp. 20–25.
- E. Upfal and A. Wigderson, How to share memory in a distributed system,Proc. 25th Annual IEEE Symp. on Foundations of Computer Science, 1984, pp. 171–180.
- L. G. Valiant, A bridging model for parallel computation,Comm. ACM 33 (1990), 103–111. CrossRef
- L. G. Valiant, General purpose parallel architectures,Handbook of Theoretical Computer Science (J. van Leeuwen, ed.), North-Holland, Amsterdam, 1990, pp. 103–110.
- L. G. Valiant and G. J. Brebner, Universal schemes for parallel communication,Proc. 13th Annual ACM Symp. on Theory of Computing, 1981, pp. 263–277.
- Locality-preserving hash functions for general purpose parallel computation
Volume 12, Issue 2-3 , pp 170-181
- Cover Date
- Print ISSN
- Online ISSN
- Additional Links
- General-purpose parallel computation
- Communication latency
- Block PRAM
- PRAM simulations
- Universal hashing
- Industry Sectors
- A. Chin (1)
- Author Affiliations
- 1. Department of Mathematics, Texas A&M University, 77843, College Station, TX, USA