On 2/17/21 11:25 AM, Thomas Huth wrote: > Even though the host machines that run the Travis CI jobs have > quite a lot of CPUs (e.g. nproc in an aarch64 job reports 32), the > containers on Travis are still limited to 2 vCPUs according to: > > https://docs.travis-ci.com/user/reference/overview/#approx-boot-time > > So we do not gain much when compiling with a job number based on > the output of "getconf _NPROCESSORS_ONLN" - quite the contrary, the > aarch64 containers are currently aborting quite often since they > are running out of memory. Thus let's rather use a fixed number > like 3 in the jobs here, so that e.g. two threads can actively run > while a third one might be waiting for I/O operations to complete. > This should hopefully fix the out-of-memory failures in the aarch64 > CI jobs. > > Signed-off-by: Thomas Huth <th...@redhat.com> > --- > See also this URL for the explanation of the 32 vs 2 CPUs on aarch64: > https://travis-ci.community/t/nproc-reports-32-cores-on-arm64/5851 > > .travis.yml | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/.travis.yml b/.travis.yml > index fc27fd6330..cc39a447e8 100644 > --- a/.travis.yml > +++ b/.travis.yml > @@ -88,7 +88,7 @@ git: > # Common first phase for all steps > before_install: > - if command -v ccache ; then ccache --zero-stats ; fi > - - export JOBS=$(($(getconf _NPROCESSORS_ONLN) + 1)) > + - export JOBS=3
Maybe worth a comment around? Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com> > - echo "=== Using ${JOBS} simultaneous jobs ===" > > # Configure step - may be overridden >