Re: scons daemon

Bill Deegan <bill-cJFiu+DHMVC5azolltMz9laTQe2KTcn/@public.gmane.org>
Newsgroups gmane.comp.programming.tools.scons.devel
Message-ID <CAEyG4CEWYhLc4b5B62+k-poCvgV=3Derf9f=TMUrJ-kLepdBLg@mail.gmail.com>
A few thoughts..

Seems like you are assuming that the SConstruct is in the top directory of
a source tree.
This is not a safe assumption. I've seen builds where the SConscripts are
scattered over several filesystems (building a project from several shared
source repositories).
Can you add some tests?
And documentation?
Any comments on the memory footprint of running this on a larger source
tree? (where SCons is using a fair amount of memory already)

Is it really necessary to make a full copy of the source tree to a temp dir?
How would this impact the use of VariantDir?

-Bill

On Thu, Jan 14, 2016 at 11:56 AM, Schleimer, Ben via Scons-dev <
[email protected]> wrote:

> Hi,
>     I finished up the watch mode as best as I could and posted a pull
> request for it here
> https://bitbucket.org/scons/scons/pull-requests/289/watch-mode/diff
>
> I am hoping that people will try it out for their incremental builds and
> see it if is working for them or not and if it helps their iteration time.
> I tried to minimize changes in the core scons code. The only major change
> I had to make was to add
>    SCons.Script._SConscript.global_list_of_processed_sconscipt_files
>
>
> This is used to track where the SConscript files are so that a
> commonprefix can be established for all of the SConstruct files.
>
> Sincerely
> Ben
>
>
> On Tuesday, December 29, 2015 8:23 PM, "Schleimer, Ben via Scons-dev" <
> [email protected]> wrote:
>
>
> >
> >
> >Hi William,
> >
> >   The non-interactive timings are not affected by the patch.
> >
> >
> >Besides, I'm giving up on that patch and writing a completely separate
> Watch mode. It'll be started by "scons --watch" and it'll be a background
> compilation triggered by file changes.
> >
> >
> >
> >Once I get something simple working, I'll post the pull request so people
> can criticize it and hopefully improve it so that it works in a general way.
> >
> >
> >Sincerely
> >Ben
> >
> >
> >
> >
> >On Tuesday, December 29, 2015 7:25 PM, William Blevins <
> [email protected]> wrote:
> >
> >
> >>
> >>
> >>No, I just wanted the profile from before the patch and after the patch
> on the same code. Unless I misunderstood your output from last time, you
> only supplied the information regarding the patched version correct?
> >>
> >>
> >>V/R,
> >>William
> >>
> >>
> >>On Tue, Dec 29, 2015 at 11:25 PM, Schleimer, Ben via Scons-dev <
> [email protected]> wrote:
> >>
> >>Hi,
> >>>
> >>>
> >>>
> >>>> Try running with --debug=time
> >>>
> >>>
> >>>Did you want to see all of the build output?
> >>>
> >>>
> >>>Ben
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>On Tuesday, December 29, 2015 2:57 PM, Bill Deegan <
> bill-cJFiu+DHMVC5azolltMz9laTQe2KTcn/@public.gmane.org> wrote:
> >>>
> >>>
> >>>>
> >>>>
> >>>>Try running with --debug=time
> >>>>
> >>>>
> >>>>--debug=time
> >>>>Prints various time profiling information:
> the time spent executing each individual build command;
> the total build time (time SCons ran from beginning to end);
> the total time spent reading and executing SConscript files;
> the total time spent SCons itself spend running
> (that is, not counting reading and executing SConscript files);
> and both the total time spent executing all build commands
> and the elapsed wall-clock time spent executing those build commands.
> (When scons is executed without the -j option,
> the elapsed wall-clock time will typically
> be slightly longer than the total time spent
> executing all the build commands,
> due to the SCons processing that takes place
> in between executing each command.
> When scons is executed with the -j option,
> and your build configuration allows good parallelization,
> the elapsed wall-clock time should
> be significantly smaller than the
> total time spent executing all the build commands,
> since multiple build commands and
> intervening SCons processing
> should take place in parallel.)
> >>>>-Bill
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>On Tue, Dec 29, 2015 at 2:47 PM, William Blevins <
> [email protected]> wrote:
> >>>>
> >>>>I guess my point here was that I wanted to know where the time savings
> was happening since SCons does split out some process timings.
> >>>>>
> >>>>>
> >>>>>I just wanted to see a regular build timing with and without your
> patch.
> >>>>>
> >>>>>
> >>>>>V/R,
> >>>>>William
> >>>>>
> >>>>>
> >>>>>On Tue, Dec 29, 2015 at 7:07 PM, Schleimer, Ben via Scons-dev <
> [email protected]> wrote:
> >>>>>
> >>>>>Hi William,
> >>>>>>
> >>>>>>
> >>>>>>>Can you give the time saving using --debug=time for -j1 and -j4?
> >>>>>>>
> >>>>>>
> >>>>>>   Sure,
> >>>>>>
> >>>>>>regular scons build (scons -jX --debug=time)
> >>>>>>a clean build with -j1 is:
> >>>>>>Total build time: 20.901390 seconds
> >>>>>>Total SConscript file execution time: 0.149543 seconds
> >>>>>>Total SCons execution time: 0.444850 seconds
> >>>>>>Total command execution time: 20.306997 seconds
> >>>>>>
> >>>>>>
> >>>>>>an incremental build with -j1 is:
> >>>>>>Total build time: 2.439754 seconds
> >>>>>>Total SConscript file execution time: 0.151794 seconds
> >>>>>>Total SCons execution time: 0.337350 seconds
> >>>>>>Total command execution time: 1.950610 seconds
> >>>>>>
> >>>>>>
> >>>>>>a clean build with -j4 is:
> >>>>>>Total build time: 7.158301 seconds
> >>>>>>Total SConscript file execution time: 0.153021 seconds
> >>>>>>Total SCons execution time: 0.107556 seconds
> >>>>>>Total command execution time: 6.897724 seconds
> >>>>>>
> >>>>>>
> >>>>>>an incremental build with -j4 is:
> >>>>>>Total build time: 2.368260 seconds
> >>>>>>Total SConscript file execution time: 0.151281 seconds
> >>>>>>Total SCons execution time: 0.183930 seconds
> >>>>>>Total command execution time: 2.033049 seconds
> >>>>>>
> >>>>>>
> >>>>>>interactive build (scons --interactive -jX --debug=time)
> >>>>>>a clean build with -j1:
> >>>>>>time to do a build = 19.983217001 sec
> >>>>>>
> >>>>>>an incremental build with -j1:
> >>>>>>time to do a build = 2.2111852169 sec
> >>>>>>
> >>>>>>a clean build with -j4:
> >>>>>>time to do a build = 6.93614792824 sec
> >>>>>>
> >>>>>>an incremental build with -j4:
> >>>>>>time to do a build = 2.17438697815 sec
> >>>>>>
> >>>>>>
> >>>>>>It's consistently 0.2 seconds faster with the interactive build.
> >>>>>>Not a huge amount but I'm not using that many SConscript files.
> >>>>>>(5 SConscript files and 2 SConstruct files)
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>Cheers
> >>>>>>
> >>>>>>
> >>>>>>Ben
> >>>>>>_______________________________________________
> >>>>>>Scons-dev mailing list
> >>>>>>[email protected]
> >>>>>>https://pairlist2.pair.net/mailman/listinfo/scons-dev
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>_______________________________________________
> >>>>>Scons-dev mailing list
> >>>>>[email protected]
> >>>>>https://pairlist2.pair.net/mailman/listinfo/scons-dev
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>_______________________________________________
> >>>Scons-dev mailing list
> >>>[email protected]
> >>>https://pairlist2.pair.net/mailman/listinfo/scons-dev
> >>>
> >>>
> >>
> >>
> >>
> >
> >_______________________________________________
> >Scons-dev mailing list
> >[email protected]
> >https://pairlist2.pair.net/mailman/listinfo/scons-dev
> >
> >
> >
> _______________________________________________
> Scons-dev mailing list
> [email protected]
> https://pairlist2.pair.net/mailman/listinfo/scons-dev
>

_______________________________________________
Scons-dev mailing list
[email protected]
https://pairlist2.pair.net/mailman/listinfo/scons-dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.