Is a parallel build of Maxima (using make -j N), OK?
- Subject: Is a parallel build of Maxima (using make -j N), OK?
- From: Dr. David Kirkby
- Date: Sat, 27 Nov 2010 00:17:30 +0000
On 11/26/10 11:49 PM, Rupert Swarbrick wrote:
> "Dr. David Kirkby"<david.kirkby at onetel.net> writes:
>> If one sets something like
>>
>> MAKE="make -j 20"
>>
>> to build maxima with 20 threads in paralllel, is this safe? With well
>> written Makefiles this is, but unless care was taken to make sure
>> there are no race conditions, this can be unwise.
>>
>> Does anyone know the status of the Maxima makefile?
>>
>> We are using ECL as an interpreter. I know building ECL in parallel is
>> unsafe, so we are not doing that.
>>
>> Dave
>
> Hmm, I'm not sure you'll gain much: I think the lisp compilation (which
> takes most of the time) has to be done serially.
>
> Rupert
Yes, the Lisp compilation takes a long time, but so does Maxima too. If it was
possible to reduce this somewhat, it would be good.
However, building and installing in parallel using
./configure --some options
$MAKE
$MAKE install
has failed once during the install phase. Below is the log. It was actually done
as part of a build of Sage, but the commands above are what were typed. It looks
like a directory was made, then tried to be made again, so mkdir exited with an
error.
It *may* be possible to do a parallel build, but not a parallel install. But I'm
not going to waste much time on this.
/usr/bin/ginstall -c -m 644 maxima-index.lisp
"/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info/maxima-index.lisp"
mkdir:
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html:
[File exists]
make[6]: *** [install-maxima-html] Error 1
make[6]: *** Waiting for unfinished jobs....
/usr/bin/ginstall -c -m 644 ./figures/contour1.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/contour1.gif
/usr/bin/ginstall -c -m 644 ./figures/contour2.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/contour2.gif
/usr/bin/ginstall -c -m 644 ./figures/contour3.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/contour3.gif
/usr/bin/ginstall -c -m 644 ./figures/dynamics1.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics1.gif
/usr/bin/ginstall -c -m 644 './maxima.info'
'/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info/maxima.info'
/usr/bin/ginstall -c -m 644 './maxima.info-1'
'/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info/maxima.info-1'
/usr/bin/ginstall -c -m 644 ./figures/dynamics2.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics2.gif
/usr/bin/ginstall -c -m 644 './maxima.info-2'
'/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info/maxima.info-2'
/usr/bin/ginstall -c -m 644 ./figures/dynamics3.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics3.gif
/usr/bin/ginstall -c -m 644 ./figures/dynamics4.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics4.gif
/usr/bin/ginstall -c -m 644 ./figures/dynamics5.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics5.gif
/usr/bin/ginstall -c -m 644 ./figures/dynamics6.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics6.gif
/usr/bin/ginstall -c -m 644 './maxima.info-3'
'/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info/maxima.info-3'
/usr/bin/ginstall -c -m 644 ./figures/dynamics7.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics7.gif
/usr/bin/ginstall -c -m 644 ./figures/dynamics8.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics8.gif
install-info --info-dir='/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info'
'/export/home/drkirkby/1/sage-4.6.1.alpha2/local/info/maxima.info'
/usr/bin/ginstall -c -m 644 ./figures/dynamics9.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics9.gif
/usr/bin/ginstall -c -m 644 ./figures/dynamics10.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/dynamics10.gif
/usr/bin/ginstall -c -m 644 ./figures/implicit_plot.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/implicit_plot.gif
/usr/bin/ginstall -c -m 644 ./figures/plotdf1.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotdf1.gif
/usr/bin/ginstall -c -m 644 ./figures/plotdf2.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotdf2.gif
/usr/bin/ginstall -c -m 644 ./figures/plotdf3.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotdf3.gif
/usr/bin/ginstall -c -m 644 ./figures/plotdf4.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotdf4.gif
/usr/bin/ginstall -c -m 644 ./figures/plotdf5.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotdf5.gif
/usr/bin/ginstall -c -m 644 ./figures/plotdf6.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotdf6.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting1.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting1.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting2.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting2.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting3.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting3.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting4.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting4.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting5.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting5.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting6.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting6.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting7.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting7.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting8.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting8.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting9.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting9.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting10.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting10.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting11.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting11.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting12.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting12.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting13.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting13.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting14.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting14.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting15.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting15.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting16.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting16.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting17.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting17.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting18.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting18.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting19.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting19.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting20.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting20.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting21.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting21.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting22.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting22.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting23.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting23.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting24.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting24.gif
/usr/bin/ginstall -c -m 644 ./figures/plotting25.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/plotting25.gif
/usr/bin/ginstall -c -m 644 ./figures/orthopoly1.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/orthopoly1.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs01.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs01.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs02.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs02.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs03.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs03.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs04.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs04.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs05.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs05.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs06.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs06.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs07.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs07.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs08.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs08.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs09.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs09.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs10.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs10.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs11.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs11.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs12.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs12.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs13.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs13.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs14.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs14.gif
/usr/bin/ginstall -c -m 644 ./figures/graphs15.gif
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/figures/graphs15.gif
/usr/bin/ginstall -c -m 644 ./contents.hhc
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/contents.hhc
/usr/bin/ginstall -c -m 644 ./index.hhk
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/index.hhk
/usr/bin/ginstall -c -m 644 ./header.hhp
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/header.hhp
/usr/bin/ginstall -c -m 644 ./maxima.hhp
/export/home/drkirkby/1/sage-4.6.1.alpha2/local/share/maxima/5.22.1/doc/html/maxima.hhp
make[6]: Leaving directory
`/export/home/drkirkby/1/sage-4.6.1.alpha2/spkg/build/maxima-5.22.1/src/doc/info'
make[5]: *** [install-am] Error 2
make[5]: Leaving directory
`/export/home/drkirkby/1/sage-4.6.1.alpha2/spkg/build/maxima-5.22.1/src/doc/info'
make[4]: *** [install-recursive] Error 1
make[4]: Leaving directory
`/export/home/drkirkby/1/sage-4.6.1.alpha2/spkg/build/maxima-5.22.1/src/doc/info'
make[3]: *** [install-recursive] Error 1
make[3]: Leaving directory
`/export/home/drkirkby/1/sage-4.6.1.alpha2/spkg/build/maxima-5.22.1/src/doc'
make[2]: *** [install-recursive] Error 1
make[2]: Leaving directory
`/export/home/drkirkby/1/sage-4.6.1.alpha2/spkg/build/maxima-5.22.1/src'
***********************************************************
--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
Dave