On Sunday, 7 May 2023 15:52:08 BST Michael wrote: > As I understand it and have so far confirmed on my systems, the --jobs > directive explained on the emerge man page, places a limit of how many > different non-dependent packages will be emerged in parallel at any time, by > any single emerge invocation. Where there are inter-dependencies between > packages, they will be built sequentially and in an appropriate order as > per the dependency graph emerge will determine and therefore the number of > emerge jobs could be lower than specified by the user. > > If no jobs are specified on the command line, the EMERGE_DEFAULT_OPTS > variable in make.conf will be sourced instead. If --jobs is given but left > empty, then the number of parallel emerges will be unlimited and will swamp > the CPU - see --load-average next. > > The --load-average directive in emerge specifies the average number of > packages emerge will try to build at any time. This number determines if a > new package build will start by emerge at any point in time. I don't know > over what period of time such a load average is calculated. It is > recommended to set the load-average at the number CPU-cores x 0.9 times to > maintain some system responsiveness. > > In addition to the above, we can specify --jobs and --load-average in > MAKEOPTS within make.conf. These directives will determine how many > 'make' commands will be allowed to run concurrently when emerge sources > the MAKEOPTS variable. > > So, if you have set MAKEOPTS="-j 10" and then run 'emerge --jobs=10" you > will see up to 10x10=100 parallel make tasks in your top output, while the > load average on e.g. a 100-core CPU will show 1.00. > > I understand --jobs is used to provide a hard limit, i.e. an instruction to > NOT run any more than the specified parallel package builds, multiplied by > the specified make commands. > > The --load-average is an instruction to keep starting more builds and/or run > more make commands, to keep the system busy up to the specified average > load.
Everybody keeps explaining how the system is supposed to work. I know all that, as I said last time. The problem is that PORTAGE IS NOT DOING WHAT IT'S SUPPOSED TO. I don't like to shout, but I don't know how else to get the point across. -- Regards, Peter.