qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [RFC v3 0/3] migration: reduce time of loading non-iterable vmstate
@ 2022-12-13 13:35 Chuang Xu
  2022-12-13 13:35 ` [RFC v3 1/3] memory: add depth assert in address_space_to_flatview Chuang Xu
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Chuang Xu @ 2022-12-13 13:35 UTC (permalink / raw)
  To: qemu-devel
  Cc: dgilbert, quintela, pbonzini, peterx, david, f4bug, mst, zhouyibo

Hi!

In this version:

- move virtio_load_check_delay() from virtio_memory_listener_commit() to 
  virtio_vmstate_change().
- add delay_check flag to VirtIODevice to make sure virtio_load_check_delay() 
  will be called when delay_check is true.

Please review, Chuang.

[v2]

- rebase to latest upstream.
- add sanity check to address_space_to_flatview().
- postpone the init of the vring cache until migration's loading completes. 

[v1]

The duration of loading non-iterable vmstate accounts for a significant
portion of downtime (starting with the timestamp of source qemu stop and
ending with the timestamp of target qemu start). Most of the time is spent
committing memory region changes repeatedly.

This patch packs all the changes to memory region during the period of
loading non-iterable vmstate in a single memory transaction. With the
increase of devices, this patch will greatly improve the performance.

Here are the test results:
test vm info:
- 32 CPUs 128GB RAM
- 8 16-queue vhost-net device
- 16 4-queue vhost-user-blk device.

	time of loading non-iterable vmstate
before		about 210 ms
after		about 40 ms



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-12-20 15:02 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-13 13:35 [RFC v3 0/3] migration: reduce time of loading non-iterable vmstate Chuang Xu
2022-12-13 13:35 ` [RFC v3 1/3] memory: add depth assert in address_space_to_flatview Chuang Xu
2022-12-14 16:03   ` Chuang Xu
2022-12-14 21:38     ` Peter Xu
2022-12-15 16:04       ` Peter Xu
2022-12-20 14:27         ` Chuang Xu
2022-12-15 16:51   ` Peter Maydell
2022-12-20 14:28     ` Chuang Xu
2022-12-20 15:02       ` Peter Xu
2022-12-13 13:35 ` [RFC v3 2/3] virtio: support delay of checks in virtio_load() Chuang Xu
2022-12-13 16:31   ` Peter Xu
2022-12-14 16:02     ` Chuang Xu
2022-12-13 13:35 ` [RFC v3 3/3] migration: reduce time of loading non-iterable vmstate Chuang Xu
2022-12-16 17:11 ` [RFC v3 0/3] " Peter Xu

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).