SCons build tool speed

knight at baldmt.com knight at baldmt.com
Sun Feb 13 10:33:29 EST 2005


Hi Neil, ted, et al.--

> > How does the speed of the Scons build tool compare with Ant?
> > Right now with out Ant builds take around an hour. Hoping to
> > speed that up.
>
> Scons emphasises accuracy over speed and is normally a little
> slower than other build tools although still fast enough for most
> purposes. One cause of slowness is that it reads the source files,
> traces include files and checksums them all rather than relying
> on file times. There are some things you can do to speed it up:
> http://www.scons.org/cgi-bin/wiki/GoFastButton

In anticipation of the next release of SCons, we've been doing
a *lot* of work on profiling the performance and eliminating
bottlenecks.

It turns out that scanning the source files and performing the MD5
calculation is not the dominant factor that we've all assumed it is.
There were some other inefficiencies in some of our algorithms that
were much more significant, including some unnecessary disk scans,
recomputing the same dependencies for every target in a list of
targets generated by one command, and repeated just-in-time creation
of some internal objects that could be created just once and cached.

That said, SCons will never be as fast as Make, because it *is*
doing more for you under the covers.  Although the next version
won't necessarily speed up every configuration (the bottlenecks
are extremely configuration dependent), it should be a significant
improvement for many configurations out there.

        --SK




More information about the Python-list mailing list