On Tue, Jul 25, 2023 at 11:54:52AM -0400, Peter Xu wrote: > We can make the semantics specific, no strong opinion here. I wished it > can be as generic / easy as possible but maybe I went too far. > > Though, is there anything else we can choose from besides > "max-convergence-bandwidth"? Or am I the only one that thinks it's hard to > understand when put "max" and "convergence" together? > > When I take one step back to look at the whole "bandwidth" parameters, I am > not sure why we'd even need both "convergence" and "postcopy" bandwidth > being separate. With my current understanding of migration, we may > actually need: > > - One bandwidth that we may want to run the background migration, aka, > precopy migration, where we don't rush on pushing data. > > - One bandwidth that is whatever we can have maximum; for dedicated NIC > that's the line speed. We should always use this full speed for > important things. I'd say postcopy falls into this, and this > "convergence" calculation should also rely on this.
I don't think postcopy should be assumed to run at line speed. At the point where you flip to post-copy mode, there could conceivably still be GB's worth of data still dirty and pending transfer. The migration convergance step is reasonable to put at line speed, because the max downtime parameter caps how long this burst will be, genrally to some fraction of a second. Once in post-copy mode, while the remaining data to transfer is finite, the wall clock time to complete that transfer may still be huge. It is unreasonable to assume users want to run at max linespeed for many minutes to finish post-copy at least in terms of the background transfer. You could make a case for the page fault handling to run at a higher bandwidth cap than the background transfer, but I think it is still probably not reasonable to run page fault fetches at line speed by default. IOW, I don't think we can put the same bandwidth limit on the short convergance operation, as on the longer post-copy operation. With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|