From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Zhu, Lingshan" <lingshan.zhu@intel.com>
Cc: jasowang@redhat.com, eperezma@redhat.com, cohuck@redhat.com,
stefanha@redhat.com, virtio-comment@lists.oasis-open.org,
parav@nvidia.com
Subject: Re: [virtio-comment] Re: [PATCH V2 6/6] virtio-pci: implement dirty page tracking
Date: Mon, 6 Nov 2023 05:22:44 -0500 [thread overview]
Message-ID: <20231106051550-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <e139335c-3d51-4f75-b686-34681120e4ff@intel.com>
On Mon, Nov 06, 2023 at 12:06:39PM +0800, Zhu, Lingshan wrote:
> > > Intel production work with similar bitmap
> > > based dirty page tracking solution for years.
> > and then VMs became bigger and PML was introduced.
> So you agree we should track dirty pages through the platform facilities?
> I am glad to hear that!
I just said that I thought there's no PML in platform facilities and that
might be a problem. Am I wrong?
> >
> > > Otherwise the device should report PFN which is not very practical.
> > Why not?
> Really? the device report PFN?
> What can happen if the device keep writing a small piece of memory???
then you just report the PFN once. Should work like PML really -
IOW devices maintains a bit per page internally and reports
PFN when bit is set.
> >
> > > And the resolution is apparently 8 pages? You have just multiplied
> > > the migration bandwidth by a factor of 8.
> > >
> > > No, as described in the comments, the tacking granularity is controlled by \
> > > field{gra_power}, one bit represents a page with page_size = 2^(12 +
> > > gra_power). This can also be used to reduce the size of the bitmap.
> > .. at the cost of increasing migration bandwidth.
> The device is very likely to write a neighbor page,
how likely? and e.g. with slab randomization too? please collect some
data and show it.
> and this happens
> everywhere for example CPU read 64 bytes aligned data.
CPUs don't need to send their cache across a bandwidth constrained
shared network.
>
> This is a tradeoff
tradeoff between which two options?
> >
> > > "To prevent a read-modify-write procedure, if a memory page is dirty,
> > > optionally the device is permitted to set the entire byte, which encompasses the relevant bit, to 1."
> > >
> > > This is optional and DMA is very likely to write a neighbor page, and the device transmit a whole byte anyway
> > > when a bit is dirty.
> > >
> > > How about we use platform dirty page tracking facility then implement this in virtio, as Jason suggested?
> > >
> > Without something like PML it likely won't scale either.
> So that would be platform issue which we don't need to take care of?
> Intel VT-d can do this for sure.
Intel VT-d supports PML from the IOMMU? I didn't realize. Could you help
me find it in the doc please? Which hardware supports this in the field?
What about other vendors?
--
MST
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/
next prev parent reply other threads:[~2023-11-06 10:22 UTC|newest]
Thread overview: 186+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-03 10:34 [virtio-comment] [PATCH V2 0/6] introduce basic facilities for virito live migration Zhu Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 1/6] virtio: introduce virtqueue state Zhu Lingshan
2023-11-03 11:35 ` [virtio-comment] " Parav Pandit
2023-11-03 14:39 ` [virtio-comment] " Zhu, Lingshan
2023-11-03 11:52 ` Michael S. Tsirkin
2023-11-03 14:49 ` Zhu, Lingshan
2023-11-06 9:35 ` Michael S. Tsirkin
2023-11-06 9:42 ` Zhu, Lingshan
2023-11-06 9:45 ` Michael S. Tsirkin
2023-11-07 8:11 ` Zhu, Lingshan
2023-11-07 8:22 ` Michael S. Tsirkin
2023-11-08 4:08 ` Zhu, Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 2/6] virtio: introduce SUSPEND bit in device status Zhu Lingshan
2023-11-03 11:35 ` [virtio-comment] " Parav Pandit
2023-11-03 14:55 ` [virtio-comment] " Zhu, Lingshan
2023-11-03 15:54 ` [virtio-comment] " Parav Pandit
2023-11-06 3:29 ` [virtio-comment] " Zhu, Lingshan
2023-11-06 4:07 ` [virtio-comment] " Parav Pandit
2023-11-06 9:21 ` Zhu, Lingshan
2023-11-06 10:52 ` Parav Pandit
2023-11-07 8:21 ` Zhu, Lingshan
2023-11-07 8:33 ` Michael S. Tsirkin
2023-11-07 9:24 ` Zhu, Lingshan
2023-11-08 7:42 ` Michael S. Tsirkin
2023-11-06 9:43 ` [virtio-comment] " Michael S. Tsirkin
2023-11-07 9:09 ` Zhu, Lingshan
2023-11-08 17:55 ` Michael S. Tsirkin
2023-11-09 9:55 ` Zhu, Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 3/6] virtio: dont reset vqs when SUSPEND Zhu Lingshan
2023-11-06 9:49 ` [virtio-comment] " Michael S. Tsirkin
2023-11-07 9:27 ` Zhu, Lingshan
2023-11-08 17:46 ` Michael S. Tsirkin
2023-11-09 9:58 ` Zhu, Lingshan
2023-11-09 10:15 ` [virtio-comment] " Parav Pandit
2023-11-10 6:22 ` [virtio-comment] " Zhu, Lingshan
2023-11-10 6:31 ` [virtio-comment] " Parav Pandit
2023-11-13 9:23 ` Zhu, Lingshan
2023-11-15 17:35 ` Parav Pandit
2023-11-16 10:09 ` Zhu, Lingshan
2023-11-16 10:19 ` Parav Pandit
2023-11-16 12:09 ` Michael S. Tsirkin
2023-11-17 10:13 ` Zhu, Lingshan
2023-11-17 11:04 ` Michael S. Tsirkin
2023-11-22 1:41 ` Zhu, Lingshan
2023-11-22 7:30 ` Michael S. Tsirkin
2023-11-13 3:34 ` [virtio-comment] " Jason Wang
2023-11-15 17:39 ` [virtio-comment] " Parav Pandit
2023-11-16 4:19 ` Jason Wang
2023-11-16 5:27 ` Parav Pandit
2023-11-16 10:12 ` Zhu, Lingshan
2023-11-21 7:33 ` Jason Wang
2023-11-21 16:32 ` Parav Pandit
2023-11-22 5:28 ` Jason Wang
2023-11-22 6:11 ` Parav Pandit
2023-11-24 3:35 ` Jason Wang
2023-11-24 9:04 ` Michael S. Tsirkin
2023-11-24 11:50 ` Jason Wang
2023-11-24 12:17 ` Michael S. Tsirkin
2023-11-24 13:01 ` Jason Wang
2023-11-24 14:45 ` Michael S. Tsirkin
2023-11-27 6:38 ` Jason Wang
2023-11-27 8:27 ` Michael S. Tsirkin
2023-11-27 9:54 ` Zhu, Lingshan
2023-11-21 21:18 ` Michael S. Tsirkin
2023-11-22 1:51 ` Zhu, Lingshan
2023-11-22 6:47 ` Parav Pandit
2023-11-22 10:04 ` Zhu, Lingshan
2023-11-22 10:14 ` Parav Pandit
2023-11-22 6:49 ` Michael S. Tsirkin
2023-11-22 10:03 ` Zhu, Lingshan
2023-11-22 13:37 ` Michael S. Tsirkin
2023-11-22 5:28 ` Jason Wang
2023-11-22 6:32 ` Parav Pandit
2023-11-24 3:25 ` Jason Wang
2023-11-24 6:20 ` Michael S. Tsirkin
2023-11-24 6:28 ` Jason Wang
2023-11-24 6:43 ` Zhu, Lingshan
2023-11-24 8:50 ` Michael S. Tsirkin
2023-11-24 11:51 ` Jason Wang
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 4/6] virtio-pci: implement VIRTIO_F_QUEUE_STATE Zhu Lingshan
2023-11-03 11:35 ` [virtio-comment] " Parav Pandit
2023-11-03 14:57 ` [virtio-comment] " Zhu, Lingshan
2023-11-03 15:50 ` Parav Pandit
2023-11-06 3:31 ` Zhu, Lingshan
2023-11-06 4:12 ` Parav Pandit
2023-11-06 9:27 ` Zhu, Lingshan
2023-11-06 10:52 ` Parav Pandit
2023-11-07 9:31 ` Zhu, Lingshan
2023-11-08 17:44 ` Michael S. Tsirkin
2023-11-09 10:00 ` Zhu, Lingshan
2023-11-09 10:02 ` Michael S. Tsirkin
2023-11-10 6:52 ` Zhu, Lingshan
2023-11-10 12:31 ` Parav Pandit
2023-11-13 3:46 ` Jason Wang
2023-11-13 9:23 ` Zhu, Lingshan
2023-11-15 17:36 ` Parav Pandit
2023-11-09 6:28 ` Parav Pandit
2023-11-09 8:41 ` Michael S. Tsirkin
2023-11-09 9:10 ` Parav Pandit
2023-11-09 9:53 ` Michael S. Tsirkin
2023-11-09 10:11 ` Parav Pandit
2023-11-09 10:09 ` Zhu, Lingshan
2023-11-09 10:25 ` Parav Pandit
2023-11-10 7:52 ` Zhu, Lingshan
2023-11-10 12:31 ` Parav Pandit
2023-11-13 9:25 ` Zhu, Lingshan
2023-11-15 17:35 ` Parav Pandit
2023-11-16 10:14 ` Zhu, Lingshan
2023-11-16 10:21 ` Parav Pandit
2023-11-17 10:02 ` Zhu, Lingshan
2023-11-17 10:06 ` Parav Pandit
2023-11-21 4:30 ` Jason Wang
2023-11-21 16:26 ` Parav Pandit
2023-11-22 4:15 ` Jason Wang
2023-11-22 7:15 ` Michael S. Tsirkin
2023-11-22 7:33 ` Parav Pandit
2023-11-22 14:43 ` Michael S. Tsirkin
2023-11-17 10:45 ` Michael S. Tsirkin
2023-11-22 1:32 ` Zhu, Lingshan
2023-11-22 6:53 ` Michael S. Tsirkin
2023-11-08 17:56 ` Michael S. Tsirkin
2023-11-13 9:29 ` Zhu, Lingshan
2023-11-13 10:10 ` Michael S. Tsirkin
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 5/6] virtio: introduce dirty page tracking facility Zhu Lingshan
2023-11-03 11:35 ` [virtio-comment] " Parav Pandit
2023-11-03 14:11 ` [virtio-comment] " Zhu, Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 6/6] virtio-pci: implement dirty page tracking Zhu Lingshan
2023-11-03 10:46 ` [virtio-comment] " Michael S. Tsirkin
2023-11-03 14:21 ` Zhu, Lingshan
2023-11-06 9:16 ` Zhu, Lingshan
2023-11-06 10:15 ` Michael S. Tsirkin
2023-11-07 9:43 ` Zhu, Lingshan
2023-11-07 10:43 ` Michael S. Tsirkin
2023-11-03 10:50 ` Michael S. Tsirkin
2023-11-03 11:35 ` [virtio-comment] " Parav Pandit
2023-11-03 15:02 ` [virtio-comment] " Zhu, Lingshan
2023-11-03 15:47 ` [virtio-comment] " Parav Pandit
2023-11-05 16:12 ` [virtio-comment] " Michael S. Tsirkin
2023-11-06 3:58 ` Zhu, Lingshan
2023-11-06 10:33 ` Michael S. Tsirkin
2023-11-07 9:48 ` Zhu, Lingshan
2023-11-06 4:03 ` [virtio-comment] " Parav Pandit
2023-11-07 11:13 ` [virtio-comment] " Michael S. Tsirkin
2023-11-08 9:29 ` Zhu, Lingshan
2023-11-08 17:18 ` Michael S. Tsirkin
2023-11-09 10:29 ` Zhu, Lingshan
2023-11-09 10:41 ` Michael S. Tsirkin
2023-11-10 7:24 ` Zhu, Lingshan
2023-11-06 3:52 ` Zhu, Lingshan
2023-11-06 4:34 ` [virtio-comment] " Parav Pandit
2023-11-06 9:34 ` [virtio-comment] " Zhu, Lingshan
2023-11-06 10:52 ` [virtio-comment] " Parav Pandit
2023-11-06 11:05 ` [virtio-comment] " Michael S. Tsirkin
2023-11-06 11:07 ` [virtio-comment] " Parav Pandit
2023-11-06 11:21 ` [virtio-comment] " Michael S. Tsirkin
2023-11-07 9:52 ` Zhu, Lingshan
2023-11-07 11:33 ` Michael S. Tsirkin
2023-11-08 9:30 ` Zhu, Lingshan
2023-11-08 17:19 ` Michael S. Tsirkin
2023-11-09 10:34 ` Zhu, Lingshan
2023-11-06 11:13 ` [virtio-comment] " Parav Pandit
2023-11-07 10:01 ` [virtio-comment] " Zhu, Lingshan
2023-11-07 10:25 ` Michael S. Tsirkin
2023-11-07 11:12 ` [virtio-comment] " Parav Pandit
2023-11-07 11:24 ` Parav Pandit
2023-11-08 7:11 ` [virtio-comment] " Jason Wang
2023-11-08 7:16 ` [virtio-comment] " Parav Pandit
2023-11-07 11:31 ` [virtio-comment] " Michael S. Tsirkin
2023-11-08 9:36 ` Zhu, Lingshan
2023-11-07 12:00 ` Michael S. Tsirkin
2023-11-06 10:29 ` Michael S. Tsirkin
2023-11-06 11:21 ` [virtio-comment] " Parav Pandit
2023-11-06 11:27 ` [virtio-comment] " Michael S. Tsirkin
2023-11-06 11:31 ` [virtio-comment] " Parav Pandit
2023-11-07 10:02 ` [virtio-comment] " Zhu, Lingshan
2023-11-07 11:36 ` Michael S. Tsirkin
2023-11-05 16:20 ` Michael S. Tsirkin
2023-11-06 3:51 ` [virtio-comment] " Parav Pandit
2023-11-03 14:32 ` [virtio-comment] " Zhu, Lingshan
2023-11-05 16:16 ` Michael S. Tsirkin
2023-11-06 4:06 ` Zhu, Lingshan
2023-11-06 10:22 ` Michael S. Tsirkin [this message]
2023-11-07 10:44 ` Zhu, Lingshan
2023-11-07 11:29 ` Michael S. Tsirkin
2023-11-07 8:01 ` [virtio-comment] Re: [PATCH V2 0/6] introduce basic facilities for virito live migration Michael S. Tsirkin
2023-11-08 10:19 ` Zhu, Lingshan
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=20231106051550-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=parav@nvidia.com \
--cc=stefanha@redhat.com \
--cc=virtio-comment@lists.oasis-open.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.