Changes between Version 35 and Version 46 of Ticket #12016


Ignore:
Timestamp:
12/10/11 11:14:21 (11 years ago)
Author:
jdemeyer
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #12016

    • Property Dependencies changed from sage-4.8.alpha3 + #12096 to sage-4.8.alpha3 + #12096, #12137, #12138
  • Ticket #12016 – Description

    v35 v46  
    1 With the attached patches, along with the changes from #11959, the various parallel aspects of Sage should be controlled by setting the `-j` flag in `MAKE`.  That is, if `MAKE='make -j16'`, then
     1The various parallel aspects of Sage should be controlled by setting the `-j` (possible also `-l`) flags in `MAKE` or `MAKEFLAGS`.  That is, if `MAKE='make -j16'`, then
    22
    33 - running `make` will build spkg's in parallel, using 16 processes (this was done in #11959).  This is standard `make` behaviour, but we need to patch `spkg/standard/deps` to ensure that `make` recognizes that we are doing a recursive make.
     
    77 - running `./sage -b` will build the Sage library using 16 threads. If the `-j` flag in `MAKE` is not set, then use only 1 thread.
    88
    9 In #6495, we should implement the same behavior for doc building.
    10 
    11 Concerning testing this ticket: you can set the environment variable `SAGE_NUM_CORES` to the number of cores you want to pretend to have.  For example, running
     9'''Testing this ticket''': you can set the environment variable `SAGE_NUM_CORES` to the number of cores you want to pretend to have.  For example, running
    1210{{{
    1311SAGE_NUM_CORES=24 make ptestlong
     
    1513should run 8 threads (see `sage-num-threads.py`; this is undocumented because the only purpose I see is for testing this ticket).
    1614
     15'''Notes''':
     16With the patches applied, building spkgs in parallel works well, except for race conditions in:
     17 * python (#12096)
     18 * singular (#12137)
     19 * zlib (#12138)
     20 * mpir (#12139)
     21and a "jobserver unavailable" warning in:
     22 * ntl
     23 * singular
     24 * rubiks
    1725
    1826'''Apply''':
     
    2230 1. [attachment:12016-sage.patch] to the Sage library.
    2331
    24 '''Notes''':
    25 With the patches applied, building spkgs in parallel works well, except for a "jobserver unavailable" warning in:
    26  * ntl
    27  * singular
    28  * rubiks
     32See also: #6495 to implement the same behavior for doc building.