Hi Jon, Jon Griffiths <[email protected]> writes:
> Changing the line to: > > if(fNumItems > 1 && fNumItems <= setT->getBitCountInRange(fLeafIndexes[1], > fLeafIndexes[fNumItems])*log((float)fNumItems)) > > Avoids both the log() call and getBitCountInRange() when this is the case, > and > resulted in ~7% speedup for us. > > If this isn't contentious, it would be great to see this change in mainline. This sounds good to me and I will make sure it gets in before the next release. Thanks for the analysis and the suggestion. Boris -- Boris Kolpackov, Code Synthesis http://codesynthesis.com/~boris/blog Open-source XML data binding for C++ http://codesynthesis.com/products/xsd XML data binding for embedded systems http://codesynthesis.com/products/xsde Command line interface to C++ compiler http://codesynthesis.com/projects/cli
