[Avocado-devel] avocado-vt: 'avocado list' slower than usual

Cleber Rosa crosa at redhat.com
Mon Oct 3 11:26:14 UTC 2016



On 10/03/2016 08:01 AM, Lukáš Doktor wrote:
> Dne 23.9.2016 v 00:44 Eduardo Habkost napsal(a):
>> On Thu, Sep 22, 2016 at 05:29:37PM -0300, Cleber Rosa wrote:
>>> On 09/22/2016 03:34 PM, Eduardo Habkost wrote:
>>>> Hi,
>>>>
>>>> I haven't been using avocado-vt for a while, but today I have
>>>> updated and git-cleanded all my git clones (autotest, avocado,
>>>> avocado-vt, tp-qemu), removed my old ~/avocado dir, re-run
>>>> vt-bootstrap, and noticed that 'avocado list' is very slow. It is
>>>> taking 29 seconds to run and list the avocado-vt test cases. I
>>>> don't remember seeing it take so long to run, before.
>>>>
>>>> When I interrupt avocado, I get a backtrace that shows a very
>>>> deep call chain with recursive get_dicts() calls inside
>>>> virttest/cartesian_config.py (see below).
>>>>
>>>> Is this expected? Has anybody else noticed this recently?
>>>>
>>>
>>> I'll try to reproduce.  Can you please check the exact avocado and
>>> avocado-vt versions (commits) you're using?
>>
>> avocado: b82344f707424e53c1ad85429bc74a8d40e0cf31 Merging pull request
>> 1484
>> avocado-vt: 7a12dc6d19c8ca356cdaaa211d74158c2064145f Merging pull
>> request 708
>>
> 
> Hello Eduardo,
> 
> does this problem still persists? I tried running `avocado run boot
> boot`, which takes 29s (20s first boot, 7s the second) using the git
> commits your mentioned. The first thing I'd try is to re-run
> `vt-bootstra` as with new options new default filters can be added,
> which might lead to a lot of combinations created.
> 
> Another thing which might help us identify the root cause is to try
> running `--dry-run`, which only discovers the tests (which means only
> parsing the cartesian config).
> 
> As for the very deep call, that's expected, cartesian config is written
> recursively and to parse it takes quite a time, but unless you parse a
> huge cfg it should not take so long.
> 
> If none helps, please share the exact command along with all the
> required configs in order I can reproduce it.
> 
> Regards,
> Lukáš
> 

Thanks Lukáš for stepping in on this.  Let me also share my results
using those commits:

1) avocado vt-bootstrap --yes-to-all

10.30user 0.69system 0:11.40elapsed 96%CPU (0avgtext+0avgdata
68004maxresident)k
408inputs+1751720outputs (1major+58012minor)pagefaults 0swaps

2) avocado run boot

6.38user 2.83system 0:17.04elapsed 54%CPU (0avgtext+0avgdata
264040maxresident)k
38544inputs+3531872outputs (175major+218983minor)pagefaults 0swaps

So, it seems related to your cartesian configuration indeed.  Please
share them so we can better investigate it.

-- 
Cleber Rosa
[ Sr Software Engineer - Virtualization Team - Red Hat ]
[ Avocado Test Framework - avocado-framework.github.io ]

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/avocado-devel/attachments/20161003/5224afdf/attachment.sig>


More information about the Avocado-devel mailing list