#11959: build spkgs in parallel by default
---------------------------+------------------------------------------------
   Reporter:  jhpalmieri   |          Owner:  GeorgSWeber                       
     
       Type:  enhancement  |         Status:  needs_review                      
     
   Priority:  minor        |      Milestone:  sage-4.7.3                        
     
  Component:  build        |       Keywords:  SAGE_PARALLEL_SPKG_BUILD MAKE -j 
--jobs
Work_issues:               |       Upstream:  N/A                               
     
   Reviewer:               |         Author:  John Palmieri                     
     
     Merged:               |   Dependencies:                                    
     
---------------------------+------------------------------------------------

Comment(by leif):

 Replying to [comment:8 was]:
 > I'm against this as is, but I think something very close is OK. [[BR]]
 > [[BR]]
 > I think SAGE_PARALLEL_SPKG_BUILD="no" should be supported, but otherwise
 everything should be like in this proposal.    The reason is that it can
 be confusing trying to deal with build issues when the build log mixes up
 output from multiple packages being built at once.

 Therefore we have (in addition) individual logs for each spkg in
 `$SAGE_ROOT/spkg/logs`.

 [[BR]]

 > Also there can be weird build issues resulting from building multiple
 packages at once.  However, using "make -j16" (say) is very useful in all
 cases on a machine with lots of processors so you don't have to wait so
 long for individual packages to build.

 Well, building multiple spkgs in parallel is IMHO quite mature.

 If you only need an equivalent of `SAGE_PARALLEL_SPKG_BUILD=no` (still
 building each spkg in parallel if it supports that, and of course `MAKE`
 is set to `make -jN`) for debugging,
 {{{
 #!sh
 $ echo ".NOTPARALLEL" >> $SAGE_ROOT/spkg/standard/deps
 }}}
 does the job.

 We could of course document that, perhaps better in the ''Developer's''
 Guide.

 (Or provide some [other] way to enable and disable that feature -- by an
 environment variable or an easier command; the only odd thing is that
 `deps` is under revision control and hence you get uncommitted changes in
 the ''Sage root repository'' :-) whenever that file is modified.  As an
 alternative, we could include some other "temporary" or volatile
 [make]file which is in `.hgignore`, and is either empty or contains just
 `.NOTPARALLEL`.)

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11959#comment:9>
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.

Reply via email to