qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] travis.yml: Limit simultaneous jobs to 3
@ 2021-02-17 10:25 Thomas Huth
  2021-02-17 10:33 ` Philippe Mathieu-Daudé
  2021-02-17 11:57 ` Alex Bennée
  0 siblings, 2 replies; 3+ messages in thread
From: Thomas Huth @ 2021-02-17 10:25 UTC (permalink / raw)
  To: qemu-devel; +Cc: Philippe Mathieu-Daudé, Alex Bennée

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 <thuth@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
   - echo "=== Using ${JOBS} simultaneous jobs ==="
 
 # Configure step - may be overridden
-- 
2.27.0



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] travis.yml: Limit simultaneous jobs to 3
  2021-02-17 10:25 [PATCH] travis.yml: Limit simultaneous jobs to 3 Thomas Huth
@ 2021-02-17 10:33 ` Philippe Mathieu-Daudé
  2021-02-17 11:57 ` Alex Bennée
  1 sibling, 0 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-17 10:33 UTC (permalink / raw)
  To: Thomas Huth, qemu-devel; +Cc: Alex Bennée

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 <thuth@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é <philmd@redhat.com>

>    - echo "=== Using ${JOBS} simultaneous jobs ==="
>  
>  # Configure step - may be overridden
> 



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] travis.yml: Limit simultaneous jobs to 3
  2021-02-17 10:25 [PATCH] travis.yml: Limit simultaneous jobs to 3 Thomas Huth
  2021-02-17 10:33 ` Philippe Mathieu-Daudé
@ 2021-02-17 11:57 ` Alex Bennée
  1 sibling, 0 replies; 3+ messages in thread
From: Alex Bennée @ 2021-02-17 11:57 UTC (permalink / raw)
  To: Thomas Huth; +Cc: Philippe Mathieu-Daudé, qemu-devel


Thomas Huth <thuth@redhat.com> writes:

> 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.
>

Queued to testing/next, thanks.

> Signed-off-by: Thomas Huth <thuth@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
>    - echo "=== Using ${JOBS} simultaneous jobs ==="
>  
>  # Configure step - may be overridden


-- 
Alex Bennée


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-02-17 11:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-02-17 10:25 [PATCH] travis.yml: Limit simultaneous jobs to 3 Thomas Huth
2021-02-17 10:33 ` Philippe Mathieu-Daudé
2021-02-17 11:57 ` Alex Bennée

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).