Changeset 5ce1bdb


Ignore:
Timestamp:
06/30/2020 05:45:38 PM (4 years ago)
Author:
Ken Moffat <ken@…>
Branches:
10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, kea, ken/TL2024, ken/inkscape-core-mods, ken/tuningfonts, lazarus, lxqt, plabs/newcss, plabs/python-mods, python3.11, qt5new, rahul/power-profiles-daemon, renodr/vulkan-addition, trunk, upgradedb, xry111/intltool, xry111/llvm18, xry111/soup3, xry111/test-20220226, xry111/xf86-video-removal
Children:
eb7de89
Parents:
693f28e1
Message:

Rust: explain how to (mostly) restrict how many processors it wants to use.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@23349 af4574ff-66df-0310-9fd7-8a98e5e911e0

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • general/prog/rust.xml

    r693f28e1 r5ce1bdb  
    102102      all available processors, although it does not scale well and often falls
    103103      back to just using one core while waiting for a library to compile.
     104      However it can be mostly limited to a specified number of processors by
     105      a combination of adding the switch <literal>--jobs &lt;N&gt;</literal>
     106      (e.g. '--jobs 4' to limit to 4 processors) on each invocation of
     107      <command>python3 ./x.py</command> <emphasis>and</emphasis> using an
     108      environment variable <envar>CARGO_BUILD_JOBS=&lt;N&gt;</envar>. At the
     109      moment this is not effective when some of the rustc tests are run.
    104110    </para>
    105111
  • introduction/important/building-notes.xml

    r693f28e1 r5ce1bdb  
    666666      </para>
    667667
     668      <para>
     669        The rust developers seem to assume that everyone will compile on a
     670        machine dedicated to producing builds, so by default all CPUs are used.
     671        This can often be worked around, either by exporting
     672        CARGO_BUILD_JOBS=&lt;N&gt; or passing --jobs &lt;N&gt; to cargo. For
     673        compiling rustc itself, specifying --jobs &lt;N&gt; on invocations of
     674        x.py (together with the <envar>CARGO_BUILD_JOBS</envar> environment
     675        variable, which looks like a "belt and braces" approach but seems to be
     676        necessary) mostly works. The exception is running the tests when building
     677        rustc, some of them will nevertheless use all online CPUs, at least as of
     678        rustc-1.42.0.
     679      </para>
     680
    668681  </sect2>
    669682
  • introduction/welcome/changelog.xml

    r693f28e1 r5ce1bdb  
    4646      <itemizedlist>
    4747        <listitem>
     48          <para>[ken] - note that building rustc can now mostly be restricted to
     49          a specified number of processors by adding a --jobs switch to each x.py
     50          command and also exporting CARGO_BUILD_JOBS= with a value.</para>
     51        </listitem>
     52        <listitem>
    4853          <para>[ken] - Pierre discovered that building firefox-78 requires
    4954          that Python3 has been rebuilt after installing sqlite3.</para>
Note: See TracChangeset for help on using the changeset viewer.