Skip to main content

Improving the Average Delay of Sorting

  • Conference paper
Theory and Applications of Models of Computation (TAMC 2007)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4484))

  • 1135 Accesses

Abstract

In previous work we have introduced an average case measure for the time complexity of Boolean circuits – that is the delay between feeding the input bits into a circuit and the moment when the results are ready at the output gates – and analysed this complexity measure for prefix computations. Here we consider the problem to sort large integers that are given in binary notation. Contrary to a word comparator sorting circuit C where a basic computational element, a comparator, is charged with a single time step to compare two elements, in a bit comparator circuit C′ a comparison of two binary numbers has to be implemented by a Boolean subcircuit CM called comparator module that is built from Boolean gates of bounded fanin. Thus, compared to C, the depth of C′ will be larger by a factor up to the depth of CM.

Our goal is to minimize the average delay of bit comparator sorting circuits. The worst-case delay can be estimated by the depth of the circuit. For this worst-case measure two topologically quite different designs seems to be appropriate for the comparator modules: a tree-like one if the inputs are long numbers, otherwise a linear array working in a pipelined fashion. Inserting these into a word comparator circuit we get bit level sorting circuits for binary numbers of length m for which the depth is either increased by a multiplicative factor of oder log m or by an additive term of order m.

We show that this obvious solution can be improved significantly by constructing efficient sorting and merging circuits for the bit model that only suffer a constant factor time loss on the average if the inputs are uniformly distributed. This is done by designing suitable hybrid architectures of tree compaction and pipelining. These results can also be extended to classes of nonuniform distributions if we put a bound on the complexity of the distributions themselves.

Supported by DFG research grant Re 672/3.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ajtai, M., Komlos, J., Szemeredi, E.: Sorting in c log n parallel steps. Combinatorica 3, 1–19 (1983)

    Article  MATH  MathSciNet  Google Scholar 

  2. Al-Hajery, M., Batcher, K.: On the bit-level complexity of bitonic sorting networks. In: Proc. 22. Int. Conf. on Parallel Processing, III.209–III.213 (1993)

    Google Scholar 

  3. Hatirnaz, I., Leblebici, Y.: Scalable binary sorting architecture based on rank ordering withlinear area-time complexity. In: Proc. 13. IEEE ASIC/SOC Conference, pp. 369–373 (2000)

    Google Scholar 

  4. Jakoby, A.: Die Komplexität von Präfixfunktionen bezüglich ihres mittleren Zeitverhaltens. Dissertation, Universität zu Lübeck (1998)

    Google Scholar 

  5. Jakoby, A., Reischuk, R., Schindelhauer, C.: Circuit complexity: from the worst case to the average case. In: Proc. 26. ACM STOC, pp. 58–67 (1994)

    Google Scholar 

  6. Jakoby, A., Reischuk, R., Schindelhauer, C.: Malign distributions for average case circuit complexity. In: Mayr, E.W., Puech, C. (eds.) STACS 1995. LNCS, vol. 900, pp. 628–639. Springer, Heidelberg (1995)

    Google Scholar 

  7. Jakoby, A., et al.: The average case complexity of the parallel prefix problem. In: Shamir, E., Abiteboul, S. (eds.) ICALP 1994. LNCS, vol. 820, pp. 593–604. Springer, Heidelberg (1994)

    Google Scholar 

  8. Jakoby, A., Schindelhauer, C.: Efficient Addition on Field Programmable Gate Arrays. In: Hariharan, R., Mukund, M., Vinay, V. (eds.) FSTTCS 2001. LNCS, vol. 2245, pp. 219–231. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  9. Leblebici, Y., Demirci, T., Hatirnaz, I.: Full-Custom CMOS Realization of a High-Performance Binary Sorting Engine with Linear Area-Time Complexity. In: Proc. IEEE Int. Symp. on Circuits and Systems (2003)

    Google Scholar 

  10. Leighton, T.: Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes. Morgan Kaufmann Publishers, San Mateo (1992)

    MATH  Google Scholar 

  11. Leighton, T., Plaxton, C.G.: A (fairly) simple circuit that (usually) sorts. In: Proc. 31. IEEE FOCS, pp. 264–274 (1990)

    Google Scholar 

  12. Lin, R., Olariu, S.: Efficient VLSI architecture for Columnsort. IEEE Trans. on VLSI 7, 135–139 (1999)

    Article  Google Scholar 

  13. Thompson, C.D.: Area-Time Complexity for VLSI. In: Proc. 11. ACM STOC, pp. 81–88 (1979)

    Google Scholar 

  14. Thompson, C.D.: The VLSI Complexity of Sorting. IEEE Trans. Comp. 32, 1171–1184 (1983)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jin-Yi Cai S. Barry Cooper Hong Zhu

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jakoby, A., Liśkiewicz, M., Reischuk, R., Schindelhauer, C. (2007). Improving the Average Delay of Sorting. In: Cai, JY., Cooper, S.B., Zhu, H. (eds) Theory and Applications of Models of Computation. TAMC 2007. Lecture Notes in Computer Science, vol 4484. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72504-6_30

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-72504-6_30

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-72503-9

  • Online ISBN: 978-3-540-72504-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics