All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Si-Wei Liu <si-wei.liu@oracle.com>
Cc: Jason Wang <jasowang@redhat.com>, Parav Pandit <parav@nvidia.com>,
	"Zhu, Lingshan" <lingshan.zhu@intel.com>,
	"virtio-comment@lists.oasis-open.org"
	<virtio-comment@lists.oasis-open.org>,
	"cohuck@redhat.com" <cohuck@redhat.com>,
	"sburla@marvell.com" <sburla@marvell.com>,
	Shahaf Shuler <shahafs@nvidia.com>,
	Maor Gottlieb <maorg@nvidia.com>,
	Yishai Hadas <yishaih@nvidia.com>, eperezma <eperezma@redhat.com>
Subject: Re: [virtio-comment] Re: [PATCH v3 6/8] admin: Add theory of operation for write recording commands
Date: Thu, 23 Nov 2023 09:39:38 -0500	[thread overview]
Message-ID: <20231123093718-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <9404c15c-9c9b-45c7-befd-636b3d831c3e@oracle.com>

On Thu, Nov 23, 2023 at 05:19:06AM -0800, Si-Wei Liu wrote:
> If anything relevant I would more like to see performance comparison with
> platform dirty tracking via IOMMUFD, but that's perhaps too early stage at
> this point to conclude anything given there's very limited availability (in
> terms of supporting software, I know some supporting hardware has been
> around for a few years) and none of the potential software optimizations is
> in place at this point to make a fair comparison for.


Exactly. I suggested shadow as a kind of fallback since it is instead
available.

> Granted device
> assisted tracking has its own set of limitations e.g. loose coupling or
> integration with platform features, lack of nested and PASID support et al.
> However, state of the art for platform dirty tracking is not perfect either,
> far off being highly optimized for all types of workload or scenarios. At
> least to me the cost of page table walk to scan all PTEs across all levels
> is not easily negligible - given no PML equivalent here, are we sure the
> whole range scan can be as efficient and scalable as memory size / # of PTEs
> grows? How large it may impact the downtime with this rudimentary dirty
> scan? No data point was given thus far. If chances are that there could be
> major improvement from device tracking for those general use cases to
> supplement what platform cannot achieve efficiently enough, it's not too
> good to kill off the possibility entirely at this early stage. Maybe a PoC
> or some comparative performance data can help prove the theory?
> 
> On the other hand, the device assisted tracking has at least one advantage
> that platform cannot simply offer - throttle down device for convergence,
> inherently or explicitly whenever needed. I think earlier Micheal suggested
> something to make the core data structure used for logging more efficient
> and compact, working like PML but using a queue or an array, and the entry
> of which may contain a list of discrete pages or contiguous PFN ranges.

Hmm no, what I really meant is a way for device to store all or parts
of this structure in host RAM as opposed to all of it in on-device
memory as it has to be now.

> On
> top of this one may add parallelism to distribute load to multiple queues,
> or add zero copy to speed up dirty sync to userspace - things virtio queues
> are pretty good at doing. After all, nothing can be perfect to begin with,
> and every complex feature would need substantial time to improve and evolve.
> It does so for shadow virtqueue from where it gets started to where it is
> now, even so there's still a lot of optimization work not done yet. There
> must be head room here for device page tracking or platform tracking, too.
> 
> Regards,
> -Siwei
> 
> 
> > 
> > Shadow virtqueue can be used with a save/load model for device state
> > recovery for sure.
> > 
> > > > But it seems the shadow virtqueue itself is not the major factor but
> > > > the time spent on programming vendor specific mappings for example.
> > > Yep. The slowness on mapping part is mostly due to the artifact of
> > > software-based implementation. IMHO for live migration p.o.v it's better
> > > to not involve any mapping operation in the down time path at all.
> > Yes.
> > 
> > Thanks
> > 
> > > -Siwei
> > > > Thanks
> > > > 
> > > > > The time didn't come from pci side or boot side.
> > > > > 
> > > > > For pci side of things you would want to compare the pci vs non pci device based VM boot time.
> > > > > 
> > > > This publicly archived list offers a means to provide input to the
> > > > 
> > > > OASIS Virtual I/O Device (VIRTIO) TC.
> > > > 
> > > > 
> > > > 
> > > > In order to verify user consent to the Feedback License terms and
> > > > 
> > > > to minimize spam in the list archive, subscription is required
> > > > 
> > > > before posting.
> > > > 
> > > > 
> > > > 
> > > > Subscribe: virtio-comment-subscribe@lists.oasis-open.org
> > > > 
> > > > Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
> > > > 
> > > > List help: virtio-comment-help@lists.oasis-open.org
> > > > 
> > > > List archive: https://lists.oasis-open.org/archives/virtio-comment/
> > > > 
> > > > Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
> > > > 
> > > > List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
> > > > 
> > > > Committee: https://www.oasis-open.org/committees/virtio/
> > > > 
> > > > Join OASIS: https://www.oasis-open.org/join/
> > > > 
> > > 
> > > This publicly archived list offers a means to provide input to the
> > > OASIS Virtual I/O Device (VIRTIO) TC.
> > > 
> > > In order to verify user consent to the Feedback License terms and
> > > to minimize spam in the list archive, subscription is required
> > > before posting.
> > > 
> > > Subscribe: virtio-comment-subscribe@lists.oasis-open.org
> > > Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
> > > List help: virtio-comment-help@lists.oasis-open.org
> > > List archive: https://lists.oasis-open.org/archives/virtio-comment/
> > > Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
> > > List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
> > > Committee: https://www.oasis-open.org/committees/virtio/
> > > Join OASIS: https://www.oasis-open.org/join/
> > > 
> > 
> > This publicly archived list offers a means to provide input to the
> > 
> > OASIS Virtual I/O Device (VIRTIO) TC.
> > 
> > 
> > 
> > In order to verify user consent to the Feedback License terms and
> > 
> > to minimize spam in the list archive, subscription is required
> > 
> > before posting.
> > 
> > 
> > 
> > Subscribe: virtio-comment-subscribe@lists.oasis-open.org
> > 
> > Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
> > 
> > List help: virtio-comment-help@lists.oasis-open.org
> > 
> > List archive: https://lists.oasis-open.org/archives/virtio-comment/
> > 
> > Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
> > 
> > List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
> > 
> > Committee: https://www.oasis-open.org/committees/virtio/
> > 
> > Join OASIS: https://www.oasis-open.org/join/
> > 


This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.

In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.

Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/


  reply	other threads:[~2023-11-23 14:39 UTC|newest]

Thread overview: 157+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-30 13:19 [virtio-comment] [PATCH v3 0/8] Introduce device migration support commands Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 1/8] admin: Add theory of operation for device migration Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 2/8] admin: Redefine reserved2 as command specific output Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 3/8] device-context: Define the device context fields for device migration Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 4/8] admin: Add device migration admin commands Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 5/8] admin: Add requirements of device migration commands Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 6/8] admin: Add theory of operation for write recording commands Parav Pandit
2023-10-31  1:43   ` [virtio-comment] " Jason Wang
2023-10-31  3:27     ` [virtio-comment] " Parav Pandit
2023-10-31  7:45       ` [virtio-comment] " Michael S. Tsirkin
2023-10-31  9:32         ` Zhu, Lingshan
2023-10-31  9:41           ` Michael S. Tsirkin
2023-10-31  9:47             ` Zhu, Lingshan
2023-11-01  0:29       ` Jason Wang
2023-11-01  3:02         ` [virtio-comment] " Parav Pandit
2023-11-02  4:24           ` [virtio-comment] " Jason Wang
2023-11-02  6:10             ` [virtio-comment] " Parav Pandit
2023-11-06  6:34               ` [virtio-comment] " Jason Wang
2023-11-06  6:53                 ` [virtio-comment] " Parav Pandit
2023-11-07  4:04                   ` [virtio-comment] " Jason Wang
2023-11-07  7:05                     ` Michael S. Tsirkin
2023-11-08  4:28                       ` Jason Wang
2023-11-08  8:17                         ` Michael S. Tsirkin
2023-11-08  9:00                           ` [virtio-comment] " Parav Pandit
2023-11-08 17:16                             ` [virtio-comment] " Michael S. Tsirkin
2023-11-09  6:27                               ` Parav Pandit
2023-11-09  3:31                           ` Jason Wang
2023-11-09  7:59                             ` Michael S. Tsirkin
2023-11-10  6:46                               ` [virtio-comment] " Parav Pandit
2023-11-13  3:41                                 ` [virtio-comment] " Jason Wang
2023-11-13 14:30                                   ` Michael S. Tsirkin
2023-11-14  2:03                                     ` Zhu, Lingshan
2023-11-14  7:52                                       ` Jason Wang
2023-11-15 17:37                                   ` [virtio-comment] " Parav Pandit
2023-11-16  4:24                                     ` [virtio-comment] " Jason Wang
2023-11-16  6:49                                       ` Michael S. Tsirkin
2023-11-21  4:21                                         ` Jason Wang
2023-11-21 16:24                                           ` [virtio-comment] " Parav Pandit
2023-11-22  4:11                                             ` [virtio-comment] " Jason Wang
2023-11-16  6:50                                     ` Michael S. Tsirkin
2023-11-13  3:31                               ` Jason Wang
2023-11-13  6:57                                 ` Michael S. Tsirkin
2023-11-14  7:34                                   ` Zhu, Lingshan
2023-11-14  7:59                                     ` Jason Wang
2023-11-14  8:27                                     ` Michael S. Tsirkin
2023-11-15  4:05                                       ` Zhu, Lingshan
2023-11-15  7:51                                         ` Michael S. Tsirkin
2023-11-15  7:59                                           ` Zhu, Lingshan
2023-11-15  8:05                                             ` Michael S. Tsirkin
2023-11-15  8:42                                               ` Zhu, Lingshan
2023-11-15 11:52                                                 ` Michael S. Tsirkin
2023-11-16  9:38                                                   ` Zhu, Lingshan
2023-11-16 12:18                                                     ` Michael S. Tsirkin
2023-11-17  9:50                                                       ` Zhu, Lingshan
2023-11-17  9:55                                                         ` Michael S. Tsirkin
2023-11-14  7:57                                   ` Jason Wang
2023-11-14  9:16                                     ` Michael S. Tsirkin
2023-11-15 17:42                                 ` [virtio-comment] " Parav Pandit
2023-11-16  4:18                                   ` [virtio-comment] " Jason Wang
2023-11-16  5:27                                     ` [virtio-comment] " Parav Pandit
2023-11-17 10:15                                   ` [virtio-comment] " Michael S. Tsirkin
2023-11-17 10:48                                     ` Parav Pandit
2023-11-17 11:19                                       ` Michael S. Tsirkin
2023-11-17 11:32                                         ` Parav Pandit
2023-11-17 11:49                                           ` Michael S. Tsirkin
2023-11-17 12:15                                             ` Parav Pandit
2023-11-17 12:37                                               ` Michael S. Tsirkin
2023-11-17 12:49                                                 ` Parav Pandit
2023-11-17 13:58                                                   ` Michael S. Tsirkin
2023-11-17 14:49                                                     ` Parav Pandit
2023-11-17 15:00                                                       ` Michael S. Tsirkin
2023-11-09  6:26                         ` [virtio-comment] " Parav Pandit
2023-11-15  7:59                           ` [virtio-comment] " Michael S. Tsirkin
2023-11-15 17:42                             ` [virtio-comment] " Parav Pandit
2023-11-09  6:24                     ` Parav Pandit
2023-11-13  3:37                       ` [virtio-comment] " Jason Wang
2023-11-15 17:38                         ` [virtio-comment] " Parav Pandit
2023-11-16  4:23                           ` [virtio-comment] " Jason Wang
2023-11-16  5:29                             ` [virtio-comment] " Parav Pandit
2023-11-16  5:51                               ` [virtio-comment] " Michael S. Tsirkin
2023-11-16  7:35                                 ` Michael S. Tsirkin
2023-11-16  7:40                                   ` [virtio-comment] " Parav Pandit
2023-11-16 11:48                                     ` [virtio-comment] " Michael S. Tsirkin
2023-11-16 16:26                                       ` [virtio-comment] " Parav Pandit
2023-11-16 17:25                                         ` [virtio-comment] " Michael S. Tsirkin
2023-11-16 17:29                                           ` [virtio-comment] " Parav Pandit
2023-11-16 18:20                                             ` [virtio-comment] " Michael S. Tsirkin
2023-11-17  3:02                                               ` [virtio-comment] " Parav Pandit
2023-11-17  8:46                                                 ` [virtio-comment] " Michael S. Tsirkin
2023-11-17  9:14                                                   ` [virtio-comment] " Parav Pandit
2023-11-17  9:37                                                     ` [virtio-comment] " Michael S. Tsirkin
2023-11-17  9:41                                                       ` [virtio-comment] " Parav Pandit
2023-11-17  9:44                                                         ` Parav Pandit
2023-11-17  9:51                                                         ` [virtio-comment] " Michael S. Tsirkin
2023-11-17  9:54                                                           ` Zhu, Lingshan
2023-11-17 10:02                                                             ` Michael S. Tsirkin
2023-11-17 10:10                                                               ` Parav Pandit
2023-11-17  9:57                                                           ` Parav Pandit
2023-11-17 10:37                                                             ` Michael S. Tsirkin
2023-11-17 10:52                                                               ` Parav Pandit
2023-11-17 11:32                                                                 ` Michael S. Tsirkin
2023-11-17 12:22                                                                   ` Parav Pandit
2023-11-17 12:40                                                                     ` Michael S. Tsirkin
2023-11-17 12:51                                                                       ` Parav Pandit
2023-11-21  5:16                                                                         ` Jason Wang
2023-11-21 16:29                                                                           ` Parav Pandit
2023-11-21 21:00                                                                             ` Michael S. Tsirkin
2023-11-22  3:46                                                                               ` Parav Pandit
2023-11-22  7:44                                                                                 ` Michael S. Tsirkin
2023-11-22  4:17                                                                             ` Jason Wang
2023-11-22  4:34                                                                               ` Parav Pandit
2023-11-24  3:15                                                                                 ` Jason Wang
2023-11-17  9:52                                                         ` Zhu, Lingshan
2023-11-17  9:59                                                           ` [virtio-comment] " Parav Pandit
2023-11-17 10:00                                                             ` [virtio-comment] " Zhu, Lingshan
2023-11-21  4:24                                                 ` Jason Wang
2023-11-21 16:26                                                   ` [virtio-comment] " Parav Pandit
2023-11-22  4:14                                                     ` [virtio-comment] " Jason Wang
2023-11-22  4:19                                                       ` [virtio-comment] " Parav Pandit
2023-11-24  3:09                                                         ` [virtio-comment] " Jason Wang
2023-11-16 10:28                                 ` Zhu, Lingshan
2023-11-16 11:59                                   ` Michael S. Tsirkin
2023-11-17  9:59                                     ` Zhu, Lingshan
2023-11-17 10:03                                       ` Parav Pandit
2023-11-17 11:00                                         ` Michael S. Tsirkin
2023-11-17 11:05                                           ` Parav Pandit
2023-11-17 11:33                                             ` Michael S. Tsirkin
2023-11-17 11:45                                               ` Parav Pandit
2023-11-17 12:04                                                 ` Michael S. Tsirkin
2023-11-17 12:11                                                   ` Parav Pandit
2023-11-17 12:32                                                     ` Michael S. Tsirkin
2023-11-17 13:03                                                       ` Parav Pandit
2023-11-17 14:00                                                         ` Michael S. Tsirkin
2023-11-17 14:48                                                           ` Parav Pandit
2023-11-17 14:59                                                             ` Michael S. Tsirkin
2023-11-21  6:55                                                             ` Jason Wang
2023-11-21 16:30                                                               ` Parav Pandit
2023-11-22  4:19                                                                 ` Jason Wang
2023-11-22  4:28                                                                   ` Parav Pandit
2023-11-24  3:08                                                                     ` Jason Wang
2023-11-22  2:31                                                               ` Si-Wei Liu
2023-11-22  5:31                                                                 ` Jason Wang
2023-11-23 13:19                                                                   ` Si-Wei Liu
2023-11-23 14:39                                                                     ` Michael S. Tsirkin [this message]
2023-11-24  2:29                                                                     ` Jason Wang
2023-11-28  3:00                                                                       ` Si-Wei Liu
2023-11-29  5:12                                                                         ` Jason Wang
2023-11-17 10:40                                       ` Michael S. Tsirkin
2023-11-21  4:23                                 ` Jason Wang
2023-11-21  7:14                               ` Jason Wang
2023-11-21 16:31                                 ` [virtio-comment] " Parav Pandit
2023-11-22  4:28                                   ` [virtio-comment] " Jason Wang
2023-11-22  6:41                                     ` [virtio-comment] " Parav Pandit
2023-11-24  3:06                                       ` [virtio-comment] " Jason Wang
2023-11-15  7:58                       ` Michael S. Tsirkin
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 7/8] admin: Add " Parav Pandit
2023-10-30 13:19 ` [virtio-comment] [PATCH v3 8/8] admin: Add requirements of write reporting commands Parav Pandit

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=20231123093718-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=eperezma@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=lingshan.zhu@intel.com \
    --cc=maorg@nvidia.com \
    --cc=parav@nvidia.com \
    --cc=sburla@marvell.com \
    --cc=shahafs@nvidia.com \
    --cc=si-wei.liu@oracle.com \
    --cc=virtio-comment@lists.oasis-open.org \
    --cc=yishaih@nvidia.com \
    /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.