[Scons-users] Clone effectiveness

Gary Oberbrunner garyo at oberbrunner.com
Fri Sep 14 09:11:56 EDT 2018


Most people use them in a sub-SConscript so they can make changes to the
env in that script that don't propate up to the calling SConstruct. Not the
only use case of course, but a popular one.

-- Gary

On Fri, Sep 14, 2018 at 8:15 AM Hua Yanghao <huayanghao at gmail.com> wrote:

> Thanks Gary.
>
> In this case I think I am mostly using overrides, and only one env per
> software image build.
>
> If we have overrides what are the scenarios that a Clone() of the env
> is a must to have?
> On Fri, Sep 14, 2018 at 2:03 PM Gary Oberbrunner <garyo at oberbrunner.com>
> wrote:
> >
> > No. It may create an override internally, if you pass some keyword args,
> but that's not a clone. So you can call Object() thousands of times for
> sure.
> >
> > -- Gary
> >
> > On Fri, Sep 14, 2018 at 7:56 AM Hua Yanghao <huayanghao at gmail.com>
> wrote:
> >>
> >> Is every call to "Object()" implicitly creates a clone of environment?
> >> I seems like so just want to confirm.
> >> On Thu, Sep 13, 2018 at 9:20 PM Mats Wichmann <mats at wichmann.us> wrote:
> >> >
> >> > On 09/13/2018 12:52 PM, Damien Hocking wrote:
> >> > > We do this too.  Most dlls and sos have a cloned environment.
> >> >
> >> > As I said earlier, we clone lots (>90% of our sconscripts contain a
> >> > Clone() call), but the actual build time dwarfs the "process the
> >> > SConscripts" phase (*) so I don't worry much about it. We're not
> getting
> >> > killed on memory; I can build easily enough in a 2gb
> Vagrant-provisioned
> >> > (Linux) image. So while I'd like to *know* the numbers, it's mostly
> >> > curiosity.
> >> >
> >> > Maybe we can resurrect some of the benchmarking/timing code that
> exists
> >> > in the codebase now to get more info?
> >> >
> >> > * - recent build timings:
> >> > Total build time: 360.533189 seconds  (using scons -j4)
> >> > Total SConscript file execution time: 14.785102 seconds
> >> >
> >> > 15 seconds is slow, but if I sped up the sconscript time by 50%, I'd
> >> > still make no more than a 2% impact on the overall time.
> >> >
> >> > >> On Sep 13, 2018, at 12:27 PM, Pierre-Luc Boily <
> pierreluc.boily at gmail.com> wrote:
> >> > >>
> >> > >> Hello!
> >> > >>
> >> > >> Just read on the forum :
> >> > >>
> >> > >> /Here's the caveat.
> >> > >> Don't make a gazillion Clone's they're not lightweight.
> >> > >> If you make 100, it won't kill you, if you make 1000's you may
> start seeing
> >> > >> memory and speed impacted./
> >> > >>
> >> > >> Our project branch contains 800 sconscript files.  From those 800,
> 300 are
> >> > >> for windows compilation, 500 are for unix compilation.
> >> > >>
> >> > >> We systematically create a clone of the environment at the
> beginning of
> >> > >> *each *sconscript.  So, if I understand well, it might not be the
> best
> >> > >> approach.  It would be better to do a Clone only when it is needed?
> >> > >> Reducing the number of clone could potentially speed up the
> creating of the
> >> > >> tree?
> >> > >>
> >> > >> Thx
> >> > >>
> >> > >>
> >> > >>
> >> > >> --
> >> > >> Sent from: http://scons.1086193.n5.nabble.com/Users-f16930.html
> >> > >> _______________________________________________
> >> > >> Scons-users mailing list
> >> > >> Scons-users at scons.org
> >> > >> https://pairlist4.pair.net/mailman/listinfo/scons-users
> >> > > _______________________________________________
> >> > > Scons-users mailing list
> >> > > Scons-users at scons.org
> >> > > https://pairlist4.pair.net/mailman/listinfo/scons-users
> >> > >
> >> >
> >> > _______________________________________________
> >> > Scons-users mailing list
> >> > Scons-users at scons.org
> >> > https://pairlist4.pair.net/mailman/listinfo/scons-users
> >> _______________________________________________
> >> Scons-users mailing list
> >> Scons-users at scons.org
> >> https://pairlist4.pair.net/mailman/listinfo/scons-users
> >
> >
> >
> > --
> > Gary
> > _______________________________________________
> > Scons-users mailing list
> > Scons-users at scons.org
> > https://pairlist4.pair.net/mailman/listinfo/scons-users
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>


-- 
Gary
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20180914/3214b948/attachment-0001.html>


More information about the Scons-users mailing list