(trimming the Cc: list a bit now that the announcements are done, last
Cc: to #1091394, followup on debian-devel)
Hi Helmut,
Le 2025-01-16 10:18, Helmut Grohne a écrit :
I'm attaching my proof of concept. Would you join forces and turn
either
of these PoCs into a proper Debian package that could be used during
package builds? Once accepted, we may send patches to individual Debian
packages making use of it and call OOM FTBFS a packaging bug
eventually.
I'm fine with that idea, and both PoCs use mostly the same logic (yours
is a bit more advanced). Besides my personal distaste for Python ;) I
implemented mine as a shell script so it can just be copied into
packages for testing without introducing additional dependencies.
Before introducing a whole new package for either of the candidates I
would try to submit it to devscripts though, rereading the thread it
seems that you didn't try that yet, and a Python implementation is
probably better suited for there (larger pool of potential contributors,
easier to implement testing etc). Maybe you could open a draft merge
request there and see how it goes?
Some comments about the PoC itself:
- for at least the Java builds, I would like to have a way to ignore x86
"threads" in the number of processing units as once all actual cores are
saturated with worker processes no further gains in throughput are
expected with additional processes, with a risk of negative gain and a
high memory cost; these Java processes are often heavily multithreaded
anyway and already benefit from SMT where it's available
- exposing nproc options and processing further options from environment
variables may make it easier to replace nproc invocations with the new
script in existing Makefiles and build scripts.
Cheers,
--
Julien Plissonneau Duquène