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.