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.
TIA,
Ted 8 2590
On Sat, Feb 12, 2005 at 07:16:02PM +0000, ted wrote: How does the speed of the Scons build tool compare with Ant?
I would recommend asking this question on us***@scons.tig ris.org , but my
impressions is that most of the time is probably spent in the compiler. If you
are working on a java project you could try switching from javac to jikes and
that might improve your time, though it has been a while since I used jikes.
Chris
ted wrote: 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.
Don't tools like Scons, Ant, and for that matter "make" just
execute other programs? So that 99% of the time is consumed
external to the Scons, Ant, or make process itself? Why
do you think the speed of the build tool is of any significance
compared to the time for things like compilers and linkers
to execute?
-Peter
Peter Hansen <pe***@engcorp. com> writes: ted wrote: 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.
Don't tools like Scons, Ant, and for that matter "make" just execute other programs? So that 99% of the time is consumed external to the Scons, Ant, or make process itself? Why do you think the speed of the build tool is of any significance compared to the time for things like compilers and linkers to execute?
Actually, these tools do a number of things oter than run other
programs. For instance, they parse input files to construct a build
tree, walk the build tree figuring out what needs to be rebuilt, and
only *then* do they get around to executing those other
programs. Assuming that the work prior to running those other programs
is "neglible" can lead to some truly atrocious build-time behavior. In
fact, one major advantage that ant/scons/jam/etc. have over Make is
that they avoid the defacto standard "recursive make" build
system. See <URL: http://www.pcug.org.au/~millerp/rmch...cons-harm.html > for
details on that.
<mike
--
Mike Meyer <mw*@mired.or g> http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.
ted: 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
Neil
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
Hi Peter-- 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.
Don't tools like Scons, Ant, and for that matter "make" just execute other programs? So that 99% of the time is consumed external to the Scons, Ant, or make process itself? Why do you think the speed of the build tool is of any significance compared to the time for things like compilers and linkers to execute?
You're right that build times are dominated by the external commands
when rebuilds occur. If nothing needs to be rebuilt, though, the
wall-clock time is obviously dominated by how long it takes for
the build tool to decide that. A build tool that doesn't decide
whether or not targets are up-to-date *and* dispatch the commnds
to rebuild them reasonably quickly and efficiently doesn't do a
good job of serving its users.
--SK kn****@baldmt.c om wrote: You're right that build times are dominated by the external commands when rebuilds occur. If nothing needs to be rebuilt, though, the wall-clock time is obviously dominated by how long it takes for the build tool to decide that. A build tool that doesn't decide whether or not targets are up-to-date *and* dispatch the commnds to rebuild them reasonably quickly and efficiently doesn't do a good job of serving its users.
That answer, combined with Mike's response pointing out
that tools more sophisticated than basic "make" actually
can delve into the source and identify the dependencies,
removes my confusion. Thanks. :)
-Peter This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: corey.coughlin |
last post by:
Hey guys, here's a little question. I'm looking for something like a
build system, where I can set up a bunch of jobs with dependencies, and
have them run in parallel. Ideally, I'd like a system where jobs can
be run in parallel, all the stdout and stderr for each job is kept in a
database of some kind, jobs can be anything that can be run at a
command line, and a failing job won't cause the whole run to fail.
I've been looking into some...
|
by: seberino |
last post by:
How does Scons compare to distutils? Should I ignore
it or move to it?
Chris
|
by: ThunderMusic |
last post by:
Hi,
Is it possible to speed up the build for ASP.NET 2.0 apps? Each time I
click build (or play for debug), it takes forever to build.... Is is
possible to speed up this process? it was correct in ASP.NET 1.1, but now
it's unacceptable...
Thanks a lot..
ThunderMusic
|
by: myheartinamerica |
last post by:
Hello,
I spent the morning figuring out how to use SWIG on Microsoft Windows.
I compiled the example from the SWIG tutorial on http://www.swig.org.
The biggest stumbling block was not knowing that I needed to rename
the DLL created to have a PYD extension. I also ended up writing
a .def file for exporting functions from the DLL.
Here is my SConstruct file for using SCons to build the library. It is
not perfect, but it should be...
|
by: Steven Knight |
last post by:
SCons is a software construction tool (build tool, or make tool) written
in Python. It is based on the design which won the Software Carpentry
build tool competition in August 2000.
Version 0.97 of SCons has been released and is available for download
from the SCons web site:
http://www.scons.org/download.php
An RPM package and a Win32 installer are all available, in addition to
| |
by: gamename |
last post by:
Hi,
I just installed scons on win32 that has cygwin but uses ActiveState
python. If I do "import SCons", the lib isn't found.
The win32 installer seemed very complete, but the scons lib doesn't
seem to be in any dir python knows about.
Is there another install step I need to do?
TIA,
-T
|
by: anush |
last post by:
Can anybody tell how I could go about running python scripts with
scons.
|
by: Steven Knight |
last post by:
SCons is a software construction tool (build tool, or make tool) written
in Python. It is based on the design which won the Software Carpentry
build tool competition in August 2000.
Version 0.98.1 of SCons has been released and is now available at the
SCons download page:
http://www.scons.org/download.php
RPM and Debian packages and a Win32 installer are all available, in
|
by: Pedro Borges |
last post by:
Hi guys,
Is there a way to improve the interpreter startup speed?
In my machine (cold startup) python takes 0.330 ms and ruby takes
0.047 ms, after cold boot python takes 0.019 ms and ruby 0.005 ms to
start.
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it.
Here is my compilation command:
g++-12 -std=c++20 -Wnarrowing bit_field.cpp
Here is the code in...
| |
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
|
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
|
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
| |
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...
| |