From: "Daniel P. Berrange" <berrange@redhat.com>
To: Pavel Fedin <p.fedin@samsung.com>
Cc: "Peter Crosthwaite" <peter.crosthwaite@xilinx.com>,
qemu-devel@nongnu.org, "Andreas Färber" <afaerber@suse.de>
Subject: Re: [Qemu-devel] [PATCH v4 0/2] QOM: object_property_add() performance improvement
Date: Mon, 27 Jul 2015 12:19:01 +0100 [thread overview]
Message-ID: <20150727111901.GA18731@redhat.com> (raw)
In-Reply-To: <cover.1436866326.git.p.fedin@samsung.com>
On Tue, Jul 14, 2015 at 12:38:59PM +0300, Pavel Fedin wrote:
> The function originally behaves very badly when adding properties with "[*]"
> suffix. Normally these are used for numbering IRQ pins. In order to find the
> correct starting number the function started from zero and checked for
> duplicates. This takes incredibly long time with large number of CPUs because
> number of IRQ pins on some architectures (like ARM GICv3) gets multiplied by
> number of CPUs.
>
> The solution is to add one more property which caches last used index so that
> duplication check is not repeated thousands of times. Every time an array is
> expanded the index is picked up from this cache.
>
> The modification decreases qemu startup time with 32 CPUs by a factor of 2
> (~10 sec vs ~20 sec).
10 seconds to start a QEMU with a mere 32 cpus is still a totally
ridiculous amount of time. Do you know why it is still so slow even
after your suggested patch ? Is it still related to the method
object_property_add(), or are there other areas of code with bad
scalability affecting arm ?
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 :|
prev parent reply other threads:[~2015-07-27 11:19 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-14 9:38 [Qemu-devel] [PATCH v4 0/2] QOM: object_property_add() performance improvement Pavel Fedin
2015-07-14 9:39 ` [Qemu-devel] [PATCH v4 1/2] QOM: Introduce object_property_add_single() Pavel Fedin
2015-07-14 9:39 ` [Qemu-devel] [PATCH v4 2/2] QOM: object_property_add() performance improvement Pavel Fedin
2015-07-27 11:42 ` Daniel P. Berrange
2015-07-27 14:36 ` Pavel Fedin
2015-07-27 13:03 ` Markus Armbruster
2015-07-27 13:23 ` Daniel P. Berrange
2015-07-27 13:46 ` Paolo Bonzini
2015-07-27 14:36 ` Pavel Fedin
2015-07-27 14:57 ` Andreas Färber
2015-07-27 15:06 ` Paolo Bonzini
2015-07-27 15:09 ` Paolo Bonzini
2015-07-27 15:19 ` Pavel Fedin
2015-07-27 15:22 ` Paolo Bonzini
2015-07-28 6:45 ` Pavel Fedin
2015-07-28 7:06 ` Paolo Bonzini
2015-07-27 11:19 ` Daniel P. Berrange [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150727111901.GA18731@redhat.com \
--to=berrange@redhat.com \
--cc=afaerber@suse.de \
--cc=p.fedin@samsung.com \
--cc=peter.crosthwaite@xilinx.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.