qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] Do not use slow [*] expansion for GPIO creat


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] [PATCH v2] Do not use slow [*] expansion for GPIO creation
Date: Fri, 31 Jul 2015 13:26:32 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

On Fri, Jul 31, 2015 at 03:23:22PM +0300, Pavel Fedin wrote:
> Expansion of [*] suffix is very slow because index expansion is done using
> trial and error strategy, starting every time from zero and retrying with
> the next index until insertion succeeds. With large number of already added
> properties this process takes huge amount of time (O(n^2) complexity).
> 
> Some architectures (like ARM) use very large amount of IRQ pins in interrupt
> controller models. This flaw makes machine startup extremely slow
> (~20 seconds for ARM64 with 32 CPUs. This patch decreases this time down to
> ~10 seconds.
> 
> Also in qdev_init_gpio_out_named() memset() is now called only once for the
> whole array instead of per-cell cleaning
> 
> Signed-off-by: Pavel Fedin <address@hidden>
> ---
>  hw/core/qdev.c | 21 +++++++++++++++------
>  1 file changed, 15 insertions(+), 6 deletions(-)

Reviewed-by: Daniel P. Berrange <address@hidden>


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



reply via email to

[Prev in Thread] Current Thread [Next in Thread]