Beyond External Computing: Analysis of the Cycle Structure of Permutations

  • Jörg Keller
  • Jop F. Sibeyn
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2150)


A parallel algorithm with super-linear speed-up for determining the structure of permutations of n elements for extremely large n is presented and analyzed. The algorithm uses sublinear space. If evaluating a randomly chosen successor oracle π costs c time, then a complete analysis can be performed in expected time c · (lnn - ln(P · N)) · n/P, where P is the number of available processors, and N gives the size of the secondary memory of each of the processors. A simple refinement reduces this time by a factor 1 - 1/e. The theoretical analyses are compared with experiments. At the current state of the technology values of n up to about 248 might be handled. We also describe how to perform a screening of π in much less time. If \( \pi ^{\sqrt {n/\left( {lnn \cdot P} \right)} } \) can be constructed, then such a screening can be performed in \( \mathcal{O}\left( {c \cdot \sqrt {lnn \cdot n/P} } \right) \) time.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cole, R., U. Vishkin, ‘Approximate Parallel Scheduling, Part I: the Basic Technique with Applications to Optimal Parallel List Ranking in Logarithmic Time,’ SIAM Journal on Computing, 17(1), pp. 128–142, 1988.zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Fich, F. E., J. I. Munro, P. V. Poblete, ‘Permuting in Place,’ SIAM Journal on Computing, 24(2), pp. 266–278, 1995.zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Hagerup, T., J. Keller, ‘Fast Parallel Permutation Algorithms,’ Parallel Processing Letters, 5(2), pp. 139–148, 1995.CrossRefMathSciNetGoogle Scholar
  4. 4.
    Knuth, D. E., ‘Mathematical Analysis of Algorithms,’ Proc. of IFIP Congress 1971, Information Processing 71, pp. 19–27, North-Holland Publ. Co., 1972.Google Scholar
  5. 5.
    Lambert, O., J. F. Sibeyn, ‘Parallel and External List Ranking and Connected Components on a Cluster of Workstations,’ Proc. 11th International Conference Parallel and Distributed Computing and Systems, pp. 454–460, IASTED, 1999.Google Scholar
  6. 6.
    Melville, R. C., ‘A Time-Space Tradeoff for In-Place Array Permutation,’ Journal of Algorithms, 2(2), pp. 139–143, 1981.CrossRefMathSciNetGoogle Scholar
  7. 7.
    Reid-Miller, M., ‘List Ranking and List Scan on the Cray C-90,’ Journal of Computer and System Sciences, 53(3), pp. 344–356, 1996.zbMATHCrossRefGoogle Scholar
  8. 8.
    Ranade, A., ‘A Simple Optimal List Ranking Algorithm,’ Proc. of 5th High Performance Computing, Tata McGraw-Hill Publishing Company, 1998.Google Scholar
  9. 9.
    Sedgewick, R., Ph. Flajolet, An Introduction to the Analysis of Algorithms. Addison Wesley, Reading, Mass., 1996.Google Scholar
  10. 10.
    Sibeyn, J. F., ‘One-by-One Cleaning for Practical Parallel List Ranking,’ to appear in Algorithmica Preliminary version in Proc. 9th Symposium on Parallel Algorithms and Architectures, pp. 221–230, ACM, 1997.Google Scholar
  11. 11.
    Sibeyn, J. F., ‘Ultimate Parallel List Ranking,’ Techn. Rep. MPI-I-99-1005, Max-Planck-Institut für Informatik, Saarbrücken, Germany, 1999.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Jörg Keller
    • 1
  • Jop F. Sibeyn
    • 2
  1. 1.LG Technische Informatik IIFernUniversitätHagenGermany
  2. 2.Computing Science DepartmentUmeå UniversitySweden

Personalised recommendations