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/
-~----------~----~----~----~------~----~------~--~---

Reply via email to