guix/doc
Maxim Cournoyer efbf5fdd01
offload: Improve load normalization and configurability.
Fixes <https://issues.guix.gnu.org/43773>.

The computed normalized load was previously obtained by dividing the load
average as found in /proc/loadavg by the number of parallel builds defined for
a build machine.

This normalized load didn't allow to compare machines with different number of
cores, as the load average reported by /proc/loadavg can be as high as the
number of cores; thus comparing that value to a fixed threshold of 2.0 would
mean machines with multiple cores were more likely to be flagged as overloaded
compared to single core machines.

This can be fixed by normalizing using the available number of cores instead
of the number of parallel jobs.

* guix/scripts/offload.scm (<build-machine>)[overload-threshold]: New field.
(node-load): Modify to return a normalized load value between 0 and 1, taking
into account the number of cores available.
(normalized-load): Remove procedure.
(report-load): New procedure.
(choose-build-machine): Adjust to use the modified 'node-load' and the new
'report-load' and 'build-machine-overload-threshold' procedures.
(check-machine-status): Adjust.
* doc/guix.texi (Daemon Offload Setup): Document the offload scheduler and the
new 'overload-threshold' field.
2020-10-08 10:57:12 -04:00
..
images doc: Update 'Bootstrapping' for further binary seed reduction. 2020-05-22 16:11:52 +02:00
build.scm doc: Syntax highlighting now handles @var within @lisp. 2020-09-04 11:29:51 +02:00
contributing.texi doc: Clarify that guix-daemon doesn't have to be launched from the checkout. 2020-10-08 12:26:56 +02:00
environment-gdb.scm
fdl-1.3.texi doc: Use HTTPS for external links. 2020-03-10 20:26:52 +01:00
guix-cookbook.texi doc: cookbook: Adding a section "Running Guix on a Linode Server" 2020-09-09 09:28:12 +02:00
guix.texi offload: Improve load normalization and configurability. 2020-10-08 10:57:12 -04:00
htmlxref.cnf doc: Update htmlxref.cnf. 2020-01-12 00:19:10 +01:00
local.mk doc: Update 'Bootstrapping' for further binary seed reduction. 2020-05-22 16:11:52 +02:00
package-hello.json doc: Document building and installing from JSON files. 2020-04-16 23:41:52 +02:00
package-hello.scm