Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-02-10 11:00:44


David Abrahams wrote:
> Vladimir Prus <ghost_at_[hidden]> writes:
>
>
>>Hi,
>>I've just comitted a big diff, which changes the way we deal with
>>properties. Instead of using plain jam lists, a class called
>>'property-set' is employed.
>>
>>The primary reason in speed. The new design allows to cleanly speed up
>>several operations, such as "what are free properties in this property set",
>>and so on.
>
>
> Wow, it's kind of surprising that adding a class layer (whose
> mechanisms, after all, are built in pure bjam code) speeds things up
> much. I suppose you might cache some information...

Yes, just with the new class it's very much simpler to cache information.

>>At this moment, I've switched most of the code to using the new class, and
>>see about 5x speedup on two use cases.
>
>
> Fabulous!
>
>
>>I also see that execution profile changed considerably: the code
>>which does header scanning becomes hot spot.
>
>
> :-). Now you can apply the header cache and move the hotspot back
> into our code. ;-)

Actually, *our* code which deals with scanning is hotspot. There must be
some obvious inefficiencies.

- Volodya

 


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk