Abstract
This paper investigates some possibilities to speed up inner loops of certain sort algorithms by means of special instructions derived separately for each algorithm. Execution times were evaluated by a simple timing model in which the times taken by data references were strongly stressed. The results obtained by simulation experiments show that it is difficult to challenge the leading position of quicksort, although the relative time reductions in some less efficient algorithms are larger. We also discuss the question of the limits of any improvements by examining the microprogramming of the whole algorithms.
Similar content being viewed by others
References
A. M. Abd-Alla and D. C. Karlgaard,Heuristic synthesis of microprogrammed computer architecture. IEEE Transactions on Computers C-23,8 (Aug. 1974), 802–807.
R. W. Cook and M. J. Flynn,System design of a dynamic microprocessor. IEEE Transactions on Computers C-19,3 (March 1970), 213–222.
P. A. Dearnley,Application level microcode to speed data base management. Computer Journal 22,3 (1979), 200–202.
H. Erkiö,On heapsort and its dependence on input data. Report A-1979-1, Department of Computer Science, University of Helsinki, Finland, 1979.
H. Erkiö and E. Peltola,Algorithms for experimental analysis of some internal sorting methods. Report A-1978-1, Department of Computer Science, University of Helsinki, Finland, 1978.
D. E. Knuth,The Art of Computer Programming. Vol. 1: Fundamental Algorithms. Addison-Wesley, 1969.
D. E. Knuth,An empirical study of FORTRAN programs. Software — Practice and Experience 1,1 (1971), 105–133.
D. E. Knuth,The Art of Computer Programming. Vol. 3: Sorting and Searching (2nd printing). Addison-Wesley, 1975.
P. S. Liu and F. J. Mowle,Techniques of program execution with a writable control memory. IEEE Transactions on Computers C-27,9 (Sep. 1978), 816–827.
R. Loeser,Some performance tests of “quicksort” and descendants. Comm. ACM 17,3 (March 1974), 143–152.
E. Peltola and H. Erkiö,Insertion merge sorting. Information Processing Letters 7,2 (Feb. 1978), 92–99.
J. G. Peters,The effects of paging on sorting algorithms. Report CS-74-14, University of Waterloo, Canada, 1974.
T. G. Rauscher and A. K. Agrawala,Dynamic problem-oriented redefinition of computer architecture via microprogramming. IEEE Transactions on Computers C-27,11 (Nov. 1978), 1006–1014.
D. C. Snyder,Computer performance improvement by measurement and microprogramming. Hewlett-Packard Journal (Feb. 1975), 17–24.
A. B. Tucker and M. J. Flynn,Dynamic microprogramming: processor organization and programming. Comm. ACM 14,4 (April 1971), 240–250.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Erkiö, H. Speeding sort algorithms by special instructions. BIT 21, 2–19 (1981). https://doi.org/10.1007/BF01934066
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF01934066