[net.unix-wizards] profiling statistics of the UNIX sort command.

Kim.kateveni@Ucb-C70@sri-unix (10/20/82)

Date: 17 Oct 1982 18:03:40-PDT
I recently happened to sort the 2.15Mbyte RISCII.nodes file, simul-
taneously collecting statistics. The sorting was relative to the
second-in-line field (node-name), and with elimination of duplicates
(so that each node appears only once in the resulting file).
(The .nodes files result from circuit-extraction of VLSI layout
geometry).

The sorting took half-an-hour of CPU time (on the VAX-11/780, using
my comiled version of the system sort command). ONE THIRD of that
time was spent in the subroutine blank(c).  Do you want to know what
that routine does? Well, here it is, together with the execution counts:

26087970	| blank(c)
26087970	| {
26087970	| 	if(c==' ' || c=='\t')
 6279488	| 		return(1);
19808482	| 	return(0);
       0	| }

It was executed 26 million times, with an average of 20 micro-seconds
per repetition. The argument c is not even declared "register" (to
be sincere: I did NOT compile with the optimizer!), let alone the
whole procedure being expanded in-line.
						Manolis Katevenis.