[vox-tech] a comment on Pete's fast-loop question

Micah J. Cowan micah at cowan.name
Sun Jun 18 20:13:30 PDT 2006


On Sun, Jun 18, 2006 at 08:26:21PM -0400, Peter Jay Salzman wrote:
> On Sun 18 Jun 06, 12:06 AM, Norm Matloff <matloff at cs.ucdavis.edu> said:
> > Pete Salzman asked about optimizing a loop in terms of execution speed,
> > by having the loop index go from high value to low instead of vice
> > versa.  Some discussion ensued in terms of what machine instructions a
> > compiler could take advantage of in this manner.
> > 
> > One point that you might consider, Pete, is that these considerations
> > are kind of nickel-and-dime in comparison to things like memory
> > hierarchy issue.  There is much better payoff potential in writing code
> > in such a way as to minimize cache misses, which cause major time
> > penalties, and page faults, which cause catastrophic time penalties.
>  
> Yeah, I know.  My company hired me for algorithmic optimizations --- my
> knowledge of devising a set of algorithms to accomplish a given task (e.g.,
> solving dense matrices, choosing a particular Monte Carlo for a given
> problem).
> 
> I guess my attitude towards this was more along the lines of "while I'm in
> the neighborhood, why don't I stop by and say hello".  It certainly wouldn't
> be prudent to re-implement code to use nickel and dime optimization, but
> while thoughts in my neurons travel down my CNS and translate into my
> fingers tapping on keys, I might as well tap on keys in such a way that the
> nickel and dime optimizations appear on vim's terminal.  The price of
> admission is free, so I might as well.
> 
> OK.  I took that nutty metaphor as far as it can go.  Hope it made sense.
> 
> > There is even a book on this, I believe in the Intel Press series.
> 
> Definitely sounds like a book I should pick up.  I'll Google for it!

Given your explanation above, you might also find Hacker's Delight
to be enjoyable reading (if you haven't read it already).

...just promise me you'll document the hell out of pretty much anything
you /use/ out of there... :-)

-- 
Micah J. Cowan
Programmer, musician, typesetting enthusiast, gamer...
http://micah.cowan.name/


More information about the vox-tech mailing list