So I feel I should add my own 2 cents to the pile....or possibly 25 cents due 
to inflation.


PORTAGE_IONICE_COMMAND="ionice -c 3 -p \${PID}"
PORTAGE_SCHEDULING_POLICY="idle"

Those 2 together in make.conf have had a noticeable effect on multitasking for 
me.  I still wouldn't recommend allocating all of your cores to emerge, but 
emerging with idle priority keeps your tasks a little higher up in the mix.

________________________________________
From: Laurence Perkins <lperk...@openeye.net>
Sent: Thursday, September 21, 2023 3:26 PM
To: gentoo-user@lists.gentoo.org
Subject: RE: [gentoo-user] Controlling emerges



> -----Original Message-----
> From: Wol <antli...@youngman.org.uk>
> Sent: Wednesday, September 20, 2023 3:07 PM
> To: gentoo-user@lists.gentoo.org
> Subject: Re: [gentoo-user] Controlling emerges
>
> > What you have is not a portage problem. It is a orthodox parallelism
> > problem, and I think you are thinking your constraint is unique in the
> > work - it isn't.
> > With parallelism, trying to fiddle single nodes to improve things
> > overall never really works out.
> >
> A big problem you are missing is that portage does not have control of the 
> system. It can control its usage of the system, but if I want emerge to use 
> as much SPARE resource IN THE BACKGROUND as it can without impacting on 
> on-line responsiveness, that is HARD.
>
> I would like to be able to tell portage "these programs are resource hogs, 
> don't parallelise them". If portage has loads of little jobs, it can fire 
> them off one after the other as resource becomes available. If it fires a hog 
> (or worse, two) off at the same time, the system can rapidly collapse under 
> load.
>
> Even better, if portage knew roughly how much resource each job required, it 
> could (within constraints) start with the jobs that required least resource 
> and run loads of them, and by firing jobs off in order of increasing 
> demandingness, the number of jobs running in parallel would naturally tail 
> off.
>
> At the end of the day, if the computer takes an extra 20% time, I'm not 
> bothered. If I'm sat at the computer 20% time extra because the system isn't 
> responding because emerge has bogged it down, then I do care. And when I'm 
> building things like webkit-gtk, llvm, LO, FF and TB, they do hammer my 
> system. If they're running in parallel, my system would be near unusable.
>
> Cheers,
> Wol

Maybe take a look at "cpulimit" out of the repos.  I used to use it on one of 
my low-power systems to control how much load the various compilers were 
allowed to put on the system so that it could keep doing other tasks.

I think there are some other, similar tools as well.

LMP

Reply via email to