Hi again,
On Fri, 2021-03-26 at 17:29 -0700, Michel Alexandre Salim wrote:
[snip]
> Right now I'm just overriding _smp_build_ncpus to 1, but there is a
> more elegant solution I'd like to propose:
> What if one can declaratively set the required RAM per
build job --
> either with a single macro, or maybe two if the LTO usecase requires
> even more RAM. e.g. to declare each core might take up to 8 GB:
> %global _smp_build_ram_per_cpu 8192
> then in case this is run on our aarch64 builder with 40GB
RAM,
> dynamically take the minimum of the existing _smp_build_ncpus (which
> AIUI is determined by the number of cores on the machine) and (amount
> of RAM / _smp_build_ram_per_cpu), in this case capping the actual
> number passed to -j to 5.
> Is there interest in having this be available? I could
imagine it
> might
> be useful for other resource-intensive package builds e.g. for
> Chromium.
Thanks to Dennis, Dan and Miroslav for the helpful pointers!
Short-term I'll look into adopting something similar to the Ceph
script, but medium-term - maybe we can get the scriptlet into redhat-
rpm-config and then eventually have it in RPM itself once Panu's patch
is reworked?
(Having it in redhat-rpm-config or some other RPM is probably needed
anyway, for older supported releases, so ideally we use the same macros
and only override them in redhat-rpm-config if they were undefined).
cc:ing Panu for context on the RPM PR status.
Best,
--
Michel Alexandre Salim
profile:
https://keyoxide.org/michel@michel-slm.name