[sldev] Optimization via _set_sbh_threshold
Dirk Moerenhout
blakar at gmail.com
Wed Jun 13 03:50:37 PDT 2007
Nicholaz,
read this: http://msdn2.microsoft.com/En-US/library/aa366750.aspx
As you can see the LFH covers this as it has 48 buckets of 128 for the
sizes upto 512.
The drawback of their decision to deprecate SBH is mostly that while
SBH was a default in the past LFH is not. As a result the base
performance has suddenly dropped for certain types of applications (if
not all :) ) and you need to salvage that. As it's easier to find info
on SBH than LFH many people still use it but it's not the future and I
guess at some point it'll even disappear.
Dirk aka Blakar Ogre
On 6/13/07, Nicholaz Beresford <nicholaz at blueflash.cc> wrote:
>
> Dirk,
>
> > the small block heap is disabled as of win 2000 because of rewrites
> > that started in 1999.
> > See here: http://msdn2.microsoft.com/en-us/library/ms810466.aspx. It
> > supposedly doesn't work in 64-bit mode either (not a big issue in SL
> > for now).
>
> Are you sure about that? To me it seems to be a runtime library thing,
> that was disabled with VS2003 (sbb_threshold starts with zero there) and
> I'll be damned if that first result was coincidence or wishful thingking.
>
> I just counted allocs during a session and 2.9 million of 3.0 million
> allocs were 512 byes or less (with two of three million being 32 byes
> or less).
>
>
> Nick
>
More information about the SLDev
mailing list