diff options
author | Avishay Traeger <AVISHAY@il.ibm.com> | 2011-04-03 11:31:45 +0300 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2011-04-27 14:36:57 +0200 |
commit | ff5c52a379b9fddaf512907e9ffdc275a722e65a (patch) | |
tree | 794cb3ac4f4c8e407ff4898f86fc7ed2ea0a2ac1 /hw | |
parent | 4b9b7092b4cbef084138a446b8247ba89fd474f4 (diff) | |
download | qemu-ff5c52a379b9fddaf512907e9ffdc275a722e65a.tar.gz qemu-ff5c52a379b9fddaf512907e9ffdc275a722e65a.tar.bz2 qemu-ff5c52a379b9fddaf512907e9ffdc275a722e65a.zip |
Improve accuracy of block migration bandwidth calculation
block_mig_state.total_time is currently the sum of the read request
latencies. This is not very accurate because block migration uses aio and
so several requests can be submitted at once. Bandwidth should be computed
with wall-clock time, not by adding the latencies. In this case,
"total_time" has a higher value than it should, and so the computed
bandwidth is lower than it is in reality. This means that migration can
take longer than it needs to.
However, we don't want to use pure wall-clock time here. We are computing
bandwidth in the asynchronous phase, where the migration repeatedly wakes
up and sends some aio requests. The computed bandwidth will be used for
synchronous transfer.
Signed-off-by: Avishay Traeger <avishay@il.ibm.com>
Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hw')
0 files changed, 0 insertions, 0 deletions