* [Qemu-devel] PING: [PATCH v4 0/2] QOM: object_property_add() performance improvement
@ 2015-07-27 11:11 Pavel Fedin
0 siblings, 0 replies; only message in thread
From: Pavel Fedin @ 2015-07-27 11:11 UTC (permalink / raw)
To: qemu-devel; +Cc: 'Peter Crosthwaite', 'Andreas Färber'
Ping!!!
Kind regards,
Pavel Fedin
Expert Engineer
Samsung Electronics Research center Russia
> -----Original Message-----
> From: qemu-devel-bounces+p.fedin=samsung.com@nongnu.org [mailto:qemu-devel-
> bounces+p.fedin=samsung.com@nongnu.org] On Behalf Of Pavel Fedin
> Sent: Tuesday, July 14, 2015 12:39 PM
> To: qemu-devel@nongnu.org
> Cc: Peter Crosthwaite; Andreas Färber
> Subject: [Qemu-devel] [PATCH v4 0/2] QOM: object_property_add() performance improvement
>
> 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).
>
> Pavel Fedin (2):
> QOM: Introduce object_property_add_single()
> QOM: object_property_add() performance improvement
>
> qom/object.c | 96 +++++++++++++++++++++++++++++++++++++++++++-----------------
> 1 file changed, 69 insertions(+), 27 deletions(-)
>
> --
> 1.9.5.msysgit.0
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2015-07-27 11:11 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-27 11:11 [Qemu-devel] PING: [PATCH v4 0/2] QOM: object_property_add() performance improvement Pavel Fedin
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).