diff mbox series

[6/9] gitlab-ci: Split gprof-gcov job

Message ID 20210525082556.4011380-7-f4bug@amsat.org (mailing list archive)
State New, archived
Headers show
Series gitlab-ci: Make mainstream CI green again | expand

Commit Message

Philippe Mathieu-Daudé May 25, 2021, 8:25 a.m. UTC
This job is hitting the 70min limit, so split it in 2 tasks.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 .gitlab-ci.d/buildtest.yml | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

Comments

Philippe Mathieu-Daudé May 25, 2021, 10:21 a.m. UTC | #1
On 5/25/21 10:25 AM, Philippe Mathieu-Daudé wrote:
> This job is hitting the 70min limit, so split it in 2 tasks.
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  .gitlab-ci.d/buildtest.yml | 17 ++++++++++++++---
>  1 file changed, 14 insertions(+), 3 deletions(-)
> 
> diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
> index f903fdea3f4..894732e203d 100644
> --- a/.gitlab-ci.d/buildtest.yml
> +++ b/.gitlab-ci.d/buildtest.yml
> @@ -564,16 +564,27 @@ check-deprecated:
>    allow_failure: true
>  
>  # gprof/gcov are GCC features
> -gprof-gcov:
> +build-gprof-gcov:
>    extends: .native_build_job_template
>    needs:
>      job: amd64-ubuntu2004-container
>    variables:
>      IMAGE: ubuntu2004
>      CONFIGURE_ARGS: --enable-gprof --enable-gcov
> -    MAKE_CHECK_ARGS: check
>      TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
> -  timeout: 70m
> +  artifacts:
> +    expire_in: 1 days
> +    paths:
> +      - build

FYI this job takes 28min:
https://gitlab.com/philmd/qemu/-/jobs/1290778672

> +
> +check-gprof-gcov:
> +  extends: .native_test_job_template
> +  needs:
> +    - job: build-gprof-gcov
> +      artifacts: true
> +  variables:
> +    IMAGE: ubuntu2004
> +    MAKE_CHECK_ARGS: check
>    after_script:
>      - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh

and this one 23min:
https://gitlab.com/philmd/qemu/-/jobs/1290778751
Willian Rampazzo May 25, 2021, 2:34 p.m. UTC | #2
On Tue, May 25, 2021 at 5:26 AM Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
>
> This job is hitting the 70min limit, so split it in 2 tasks.
>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  .gitlab-ci.d/buildtest.yml | 17 ++++++++++++++---
>  1 file changed, 14 insertions(+), 3 deletions(-)
>

Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Thomas Huth May 27, 2021, 6:03 a.m. UTC | #3
On 25/05/2021 12.21, Philippe Mathieu-Daudé wrote:
> On 5/25/21 10:25 AM, Philippe Mathieu-Daudé wrote:
>> This job is hitting the 70min limit, so split it in 2 tasks.
>>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>>   .gitlab-ci.d/buildtest.yml | 17 ++++++++++++++---
>>   1 file changed, 14 insertions(+), 3 deletions(-)
>>
>> diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
>> index f903fdea3f4..894732e203d 100644
>> --- a/.gitlab-ci.d/buildtest.yml
>> +++ b/.gitlab-ci.d/buildtest.yml
>> @@ -564,16 +564,27 @@ check-deprecated:
>>     allow_failure: true
>>   
>>   # gprof/gcov are GCC features
>> -gprof-gcov:
>> +build-gprof-gcov:
>>     extends: .native_build_job_template
>>     needs:
>>       job: amd64-ubuntu2004-container
>>     variables:
>>       IMAGE: ubuntu2004
>>       CONFIGURE_ARGS: --enable-gprof --enable-gcov
>> -    MAKE_CHECK_ARGS: check
>>       TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
>> -  timeout: 70m
>> +  artifacts:
>> +    expire_in: 1 days
>> +    paths:
>> +      - build
> 
> FYI this job takes 28min:
> https://gitlab.com/philmd/qemu/-/jobs/1290778672
> 
>> +
>> +check-gprof-gcov:
>> +  extends: .native_test_job_template
>> +  needs:
>> +    - job: build-gprof-gcov
>> +      artifacts: true
>> +  variables:
>> +    IMAGE: ubuntu2004
>> +    MAKE_CHECK_ARGS: check
>>     after_script:
>>       - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
> 
> and this one 23min:
> https://gitlab.com/philmd/qemu/-/jobs/1290778751

So why are they taking less than 70 minutes when split in two parts, but are 
exceeding  the 70 minutes when done in one job?
That does not make sense...

  Thomas
Alex Bennée May 27, 2021, 1:04 p.m. UTC | #4
Thomas Huth <thuth@redhat.com> writes:

> On 25/05/2021 12.21, Philippe Mathieu-Daudé wrote:
>> On 5/25/21 10:25 AM, Philippe Mathieu-Daudé wrote:
>>> This job is hitting the 70min limit, so split it in 2 tasks.
>>>
>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>> ---
>>>   .gitlab-ci.d/buildtest.yml | 17 ++++++++++++++---
>>>   1 file changed, 14 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
>>> index f903fdea3f4..894732e203d 100644
>>> --- a/.gitlab-ci.d/buildtest.yml
>>> +++ b/.gitlab-ci.d/buildtest.yml
>>> @@ -564,16 +564,27 @@ check-deprecated:
>>>     allow_failure: true
>>>     # gprof/gcov are GCC features
>>> -gprof-gcov:
>>> +build-gprof-gcov:
>>>     extends: .native_build_job_template
>>>     needs:
>>>       job: amd64-ubuntu2004-container
>>>     variables:
>>>       IMAGE: ubuntu2004
>>>       CONFIGURE_ARGS: --enable-gprof --enable-gcov
>>> -    MAKE_CHECK_ARGS: check
>>>       TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
>>> -  timeout: 70m
>>> +  artifacts:
>>> +    expire_in: 1 days
>>> +    paths:
>>> +      - build
>> FYI this job takes 28min:
>> https://gitlab.com/philmd/qemu/-/jobs/1290778672
>> 
>>> +
>>> +check-gprof-gcov:
>>> +  extends: .native_test_job_template
>>> +  needs:
>>> +    - job: build-gprof-gcov
>>> +      artifacts: true
>>> +  variables:
>>> +    IMAGE: ubuntu2004
>>> +    MAKE_CHECK_ARGS: check
>>>     after_script:
>>>       - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
>> and this one 23min:
>> https://gitlab.com/philmd/qemu/-/jobs/1290778751
>
> So why are they taking less than 70 minutes when split in two parts,
> but are exceeding  the 70 minutes when done in one job?
> That does not make sense...

The time just seems to be highly variable. Normally I see succeeding
runs take ~40 minutes. I suspect there is some aspect of the profiling
code that interacts poorly under load leading to much longer runtimes.
Alex Bennée June 7, 2021, 11:36 a.m. UTC | #5
Philippe Mathieu-Daudé <f4bug@amsat.org> writes:

> This job is hitting the 70min limit, so split it in 2 tasks.
>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  .gitlab-ci.d/buildtest.yml | 17 ++++++++++++++---
>  1 file changed, 14 insertions(+), 3 deletions(-)

I've grabbed this for the PR I'm rolling now...
diff mbox series

Patch

diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index f903fdea3f4..894732e203d 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -564,16 +564,27 @@  check-deprecated:
   allow_failure: true
 
 # gprof/gcov are GCC features
-gprof-gcov:
+build-gprof-gcov:
   extends: .native_build_job_template
   needs:
     job: amd64-ubuntu2004-container
   variables:
     IMAGE: ubuntu2004
     CONFIGURE_ARGS: --enable-gprof --enable-gcov
-    MAKE_CHECK_ARGS: check
     TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
-  timeout: 70m
+  artifacts:
+    expire_in: 1 days
+    paths:
+      - build
+
+check-gprof-gcov:
+  extends: .native_test_job_template
+  needs:
+    - job: build-gprof-gcov
+      artifacts: true
+  variables:
+    IMAGE: ubuntu2004
+    MAKE_CHECK_ARGS: check
   after_script:
     - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh