On 10/24/07, mabshoff [EMAIL PROTECTED] wrote:
On my 2x3.0GHz Quad Xeon Mac, I got the following:
Without the above, the build took ~71 minutes.
With the above, both for -j6 and -j4, the build took ~54 minutes.
I think we should look into parallel builds via SCons for the
sage.spkg, because that one eats quite a lot of time.
It would be very nice if sage-*.spkg, i.e., sage -ba could be done
in parallel. The build is *entirely managed* by Python's distutils.
Thus instead of thinking about SCons, you need to ask whether
Python distutils or some drop-in-replacement for it allows for
parallel builds. Incidentally, I think it is potentially starting to
be a serious problem that so much code gets moved from .py
to .pyx. Maybe sometimes this is done when it isn't really necessary,
just to get a couple of functions to be pyx'd.
If you want to experiment with having Sage actually build multiple
packages at the same time, which could vastly speed things up
since even the ./configure's will run in parallel, you can try the
following.
WARNING: I've tried this once a while ago and it did *not* work
for me, and I didn't have time to debug all the problems, so it
isn't supported -- you will have to fix things. That's why I've cc'd
this message to sage-devel.
0. Start with a fresh Sage tarball.
1. Open the file SAGE_ROOT/spkg/install
2. Find the line
time make -f standard/deps $1
and change it to
time make -j 4 -f standard/deps $1
3. cd to SAGE_ROOT and type make.
Watch lots of things happen at once, then something eventually
go wrong, probably because of subtle dependencies that are
appropriately described in SAGE_ROOT/standard/deps. I think theory,
by modifying the makefile in SAGE_ROOT/standard/deps appropriately,
one could make the above work. This would be very useful to a lot
of people, actually, since it would speed up building sage on smp machines.
I think the deps aren't complete, so that a single make process works,
but once you do a -j4 things go wrong. We might want to be less
ambitious and start with -j2.
Sure. It would be very good to fix things so the deps are complete though.
I mean, I *think* they are complete, and no of no case where they aren't,
but evidently they aren't if the above make doesn't work.
william
--~--~-~--~~~---~--~~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~--~~~~--~~--~--~---