#12118: Parallel build of Sage is broken
-----------------------------+----------------------------------------------
Reporter: justin | Owner: GeorgSWeber
Type: PLEASE CHANGE | Status: new
Priority: major | Milestone: sage-4.8
Component: build | Keywords:
Work_issues: | Upstream: N/A
Reviewer: | Author: justin
Merged: | Dependencies:
-----------------------------+----------------------------------------------
Beginning with the first 4.8 alpha, the build will fail if the build
system is sufficiently fast, and perhaps, with sufficiently many cores
available.
The attached log file (from a 4.8.a3 build) shows that the spkg
libgpg_error-1.6.p3 blows up because it tries to make a directory that
already exists. Georg Weber (gsw') seems to have an explanation: while
the Makefile does check to see that the file exists, if the build is
sufficiently parallel, two checks can occur at the same time, see no
directory, and then both try to make the directory. Only one can succeed.
His comment on the list that "hyperthreading" may be the problem, I think,
is not the case. For me, the build fails on a dual 6-core Xeon Mac Pro
for "-j24", "-h12", and "-j8". It succeeds with "-j4".
It appears that the directories are made in a shell file, rather than a
Makefile. If so, the usual "-mkdir" Makefile trick won't work. However,
at least on Mac OS X, using "mkdir -p" will ignore failures because the
directory exists.
Is this portable across all the systems we support? The man page implies
that it is.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12118>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.