[pve-devel] KVM Live Backup performance
Eric Blevins
eric at netwalk.com
Tue Nov 26 17:39:27 CET 2013
> There is also a small possibility that we have a bug ;-) I will debug that
> when I update that code for 1.7.
>
> Looking at the code, it seems that we also backup read blocks immediately. That way we
> can avoid re-reads.
>
> I am not sure if that is good or bad.
This would explain the degraded read performance I am seeing.
The writes are also limited in this same manner but this was already
well known.
I have a suggestion that would help alleviate the read and write
downsides to this.
Create a memory buffer where the reads/writes from the VM are placed.
When buffer is over a certain percentage, stop the backup read
operations and flush the buffer.
The VM can perform IO up to the limit of the memory buffer with little
loss in performance.
mbuffer demonstrates that adding a buffer has a positive impact on the
VM performance:
vzdump 108 -stdout|mbuffer -m 10G |cstream -t 40000000 > /dev/null
In the VM I ran the same read operation as before:
dd if=/dev/vdb of=/dev/null bs=1M count=8192 skip=24000
I was able to read at 83.7MB/sec, previously with the same cstream limit
I only got 31.8MB/sec
More information about the pve-devel
mailing list