skip to main content
article
Free Access

Time-work tradeoffs for parallel algorithms

Published:01 September 1997Publication History
Skip Abstract Section

Abstract

Some parallel algorithms have the property that, as they are allowed to take more time, the total work that they do is reduced. This paper describes several algorithms with this property. These algorithms solve important problems on directed graphs, including breadth-first search, topological sort, strong connectivity, and and the single source shorest path problem. All of the algorithms run on the EREW PRAM model of parallel computer, except the algorithm for strong connectivity, which runs on the probabilistic EREW PRAM.

References

  1. AGGARWAL, A., ANDERSON, R., AND KAO, M. 1990. Parallel depth-first search in directed graphs. SIAM J. Comput. 397-409. Google ScholarGoogle Scholar
  2. AHO, A. V., HOPCROFT, J. E., AND ULLMAN, J. D. 1974. The Design and Analysis of Computer Algorithms. Addison-Wesley, Reading, Mass. Google ScholarGoogle Scholar
  3. AHO, A. V., HOPCROFT, J. E., AND ULLMAN, J.D. 1982. Data Structures and Algorithms. Addison- Wesley, Reading, Mass. Google ScholarGoogle Scholar
  4. BRENT, R.P. 1974. The parallel evaluation of general arithmetic expressions. J. ACM 21, 2 (Apr.), 201-206. Google ScholarGoogle Scholar
  5. COHEN, E. 1992. Parallel algorithm with improved work for shortest-paths from multiple sources. Manuscript.Google ScholarGoogle Scholar
  6. COPPERSMITH, D., AND WINOGRAD, S. 1987. Matrix multiplication via arithmetic progressions. In Proceedings of the 19th Annual ACM Symposium on Theory of Computing (New York, N.Y., May 25-27). ACM, New York, pp. 1-6. Google ScholarGoogle Scholar
  7. FREDMAN, M. L., AND TARJAN, R.E. 1987. Fibonacci heaps and their uses in improved network optimization algorithms. J. ACM 34, 3 (July), 596-615. Google ScholarGoogle Scholar
  8. GALIL, Z. 1984. Optimal parallel algorithms for string matching. In Proceedings of the 16th Annual ACM Symposium on Theory of Computing (Washington, D.C., Apr. 30-May 2) ACM, New York, pp. 240-248. Google ScholarGoogle Scholar
  9. GAZIT, H., AND MILLER, G. L. 1988. An improved parallel algorithm that computes the BFS numbering of a directed graph. Inf. Proc. Lett. 61-65. Google ScholarGoogle Scholar
  10. HAGERUP, T. 1987. Towards optimal parallel bucket sorting. Inf. Comput. 39-51. Google ScholarGoogle Scholar
  11. KLEIN, P. N., AND SARIAM, S. 1992. A parallel randomized approximation scheme for shortest paths. In Proceedings of the 24th Annual ACM Symposium on Theory of Computing (Victoria, B.C., Canada, May 4-6). ACM, New York, pp. 750-758. Google ScholarGoogle Scholar
  12. KNUTH, D. E. 1980. The Art of Computer Programming. Volume 1: Fundamental Algorithms. Addison-Wesley, Reading, Mass. Google ScholarGoogle Scholar
  13. KARP, R. M., AND RAMAcHANDRAN, V. 1990. A survey of parallel algorithms for shared-memory machines. In Handbook of Theoretical Computer Science. J. van Leeuwen, ed. MIT Press, Cambridge, Mass. Google ScholarGoogle Scholar
  14. PAUL, W., VISHKIN, U., AND WAGNER, H. 1983. Parallel dictionaries on 2-3 trees. In Automata, Languages and Programming. J. Diaz, ed. pp. 597-609. Google ScholarGoogle Scholar
  15. REIF, J. 1985. An optimal parallel algorithm for integer sorting. In Proceedings of the 26th Annual Symposium on the Foundations of Computer Science. IEEE, New York, pp. 496-503.Google ScholarGoogle Scholar
  16. SPENCER, T. 1989. Time-work tradeoffs for parallel algorithms. Tech. Report, 89-26. RPI, Troy, N.Y.Google ScholarGoogle Scholar
  17. SPENCER, T. 1991a. Time-work tradeoffs for parallel graph algorithms. In Proceedings of the 2nd Annual Symposium on Discrete Algorithms. pp. 425-432. Google ScholarGoogle Scholar
  18. SPENCER, T. 1991b. More time-work tradeoffs for parallel graph algorithms. In Proceedings of the 3rd Symposium on Parallel Algorithms and Architectures. pp. 81-93. Google ScholarGoogle Scholar
  19. TARJAN, R. 1972. Depth first search and linear graph algorithms. SIAM J. Comput. 1, 215-225.Google ScholarGoogle Scholar
  20. TARJAN, R., AND VISHKIN, U. 1985. An efficient parallel biconnectivity algorithm. SIAM J. Comput. 14, 862-874.Google ScholarGoogle Scholar
  21. ULLMAN, J., AND YANNAKAKIS, M. 1990. High-probability parallel transitive closure algorithms. Symp. ParaL Algor. Arch. 200-209. Google ScholarGoogle Scholar

Index Terms

  1. Time-work tradeoffs for parallel algorithms

        Recommendations

        Reviews

        Linda Pagli

        Problems on graphs—such as the directed spanning tree, breadth-first search, topological sort, cycle detection for directed graphs, strongly connected components, and single-source shortest paths with nonnegative edge lengths—are classic examples of problems for which no time-efficient parallel algorithm exists, although their sequential solutions are linear or almost linear. In this paper, Spencer observes that, if we do not search for the time-optimal algorithm but allow slower algorithms, we can obtain a better processor-time product (work) for the parallel algorithm. This basic idea makes it possible to define algorithms that exhibit time-work tradeoffs, which means that the slower the algorithms are allowed to be, the less work they do. The proposed parallel solutions for the above problems apply for a number of processors that vary in a given range. All of the algorithms are developed in the EREW PRAM model except for the one computing strong connectivity, which runs on the probabilistic EREW PRAM. This paper is of mainly theoretical interest.

        Access critical reviews of Computing literature here

        Become a reviewer for Computing Reviews.

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader