From c6dda204e15c5b27559f7617b18a7b3ce604e2f8 Mon Sep 17 00:00:00 2001 From: André Draszik Date: Tue, 3 Mar 2020 16:05:10 +0000 Subject: lib/oe/utils: allow to set a lower bound on returned cpu_count() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This will be needed for making xz compression more deterministic, as xz archives are created differently in single- vs multi-threaded modes. This means that due to bitbake's default of using as many threads as there are cores in the system, files compressed with xz will be different if built on a multi-core system compared to single-core systems. Allowing cpu_count() here to return a lower bound, will allow forcing xz to always use multi-threaded operation. Signed-off-by: André Draszik Signed-off-by: Richard Purdie --- meta/lib/oe/utils.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'meta/lib/oe/utils.py') diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py index e350b05ddf..aee4336482 100644 --- a/meta/lib/oe/utils.py +++ b/meta/lib/oe/utils.py @@ -248,9 +248,10 @@ def trim_version(version, num_parts=2): trimmed = ".".join(parts[:num_parts]) return trimmed -def cpu_count(): +def cpu_count(at_least=1): import multiprocessing - return multiprocessing.cpu_count() + cpus = multiprocessing.cpu_count() + return max(cpus, at_least) def execute_pre_post_process(d, cmds): if cmds is None: -- cgit 1.2.3-korg