Author: Gerd Isenberg
Date: 00:58:32 12/17/02
Go up one level in this thread
On December 17, 2002 at 01:47:27, Walter Faxon wrote: >On December 16, 2002 at 15:05:56, Gerd Isenberg wrote: > >>Hi all, >> >>My conclusion with Athlons bit scan (and reset) routines so far: >> >>Inlined bsf is the fastest for IsiChess, because of shortest code! >> >>Walter Faxon's magic LSB_64 and bitSearchAndReset_MMX (both faster not inlined) >>both produce a about 3-5% slower IsiChess. LSB_64 and bitSearchAndReset_MMX are >>equal in IsiChess. In a dumb-loop test bitSearchAndReset_MMX is clearly the >>fastest (14.9 seconds) for 10^8 * 10 bits resets. >> ><snip> > > >It's understandable that even if bsf itself is relatively slow, its not needing >so many registers to do its work may more than make up the difference. > >Still, I'm confused. If the other two routines are not inlined, there must be >at least a little procedure call overhead, right? The registers they need will >have to be saved/restored either way. How can _not_ inlining produce faster >code? Matt, help! > >-- Walter Hi Walter, it depends on the program of course. In IsiChess inlined LSB_64 is definitely slower than _not_ inlined. Even code must be read into L1-cache, and more code implies more memory reads - there are so many "chaoic" interferences, at least in IsiChess, but i guess also in other programs. Cheers, Gerd
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.