On Thursday, 16 February 2023 12:23:52 GMT Rich Freeman wrote:

--->8 Much useful detail.

That all makes perfect sense, and is what I'd assumed, but it's good to have 
it confirmed.

> The load average setting is definitely useful and I would definitely
> set it, but when the issue is swapping it doesn't go far enough.  Make
> has no idea how much memory a gcc process will require.  Since that is
> the resource likely causing problems it is hard to efficiently max out
> your cores without actually accounting for memory use.  The best I've
> been able to do is just set things conservatively so it never gets out
> of control, and underutilizes CPU in the process.  Often it is only
> parts of a build that even have issues - something big like chromium
> might have 10,000 tasks that would run fine with -j16 or whatever, but
> then there is this one part where the jobs all want a ton of RAM and
> you need to run just that one part at a lower setting.

I've just looked at 'man make', from which it's clear that -j = --jobs, and 
that both those and --load-average are passed to /usr/bin/make, presumably 
untouched unless portage itself has identically named variables. So I wonder 
how feasible it might be for make to incorporate its own checks to ensure that 
the load average is not exceeded. I am not a programmer (not for at least 35 
years, anyway), so I have to leave any such suggestion to the experts.

-- 
Regards,
Peter.




Reply via email to