Skip to content

Commit 9ce0c3c

Browse files
Yhg1sAA-Turner
authored andcommitted
Do not suggest make -j for building CPython. make -j means _no_ limit on
the number of concurrent jobs, not "a sensible limit considering the available memory and CPU cores". With LTO it's easy to run out of memory when too many jobs run at the same time.
1 parent 1b10013 commit 9ce0c3c

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

developer-workflow/extension-modules.rst

+5-2
Original file line numberDiff line numberDiff line change
@@ -547,8 +547,11 @@ Now that the configuration is in place, it remains to compile the project:
547547
548548
.. tip::
549549

550-
Use ``make -j $(nproc)`` to speed-up compilation by using as many CPU cores
551-
as possible or ``make -jN`` to allow at most *N* concurrent jobs.
550+
Use ``make -jN`` to speed-up compilation by utilizing as many CPU cores
551+
as possible, where *N* is as many CPU cores you want to spare (and have
552+
memory for). Be careful using ``make -j`` with no argument, as this puts
553+
no limit on the number of jobs, and compilation can sometimes use up a
554+
lot of memory (like when building with LTO).
552555

553556
* ``make regen-configure`` updates the :cpy-file:`configure` script.
554557

0 commit comments

Comments
 (0)