qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Re: Strategic decision: COW format


From: Avi Kivity
Subject: Re: [Qemu-devel] Re: Strategic decision: COW format
Date: Wed, 23 Feb 2011 17:59:16 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101209 Fedora/3.1.7-0.35.b3pre.fc14 Lightning/1.0b3pre Thunderbird/3.1.7

On 02/23/2011 05:47 PM, Anthony Liguori wrote:
I don't see how that works, since the memory image is duplicated for each snapshot. So thousands of snapshots = terabytes of storage, and hours of creating the snapshots.


Fabrice wanted to use CoW to as a mechanism to deduplicate the memory contents with the on-disk state specifically to address this problem. For the longest time, there was a comment in the savevm code along these lines. It might still be there.

I think the lack of on-disk hashes was a critical missing bit to make this feature really work well.

So you have to use dirty logging to see which pages changed, otherwise you have to dedup all of them. Still I think migration/kemari is a better fit for this.

Can you elaborate? What's the problem with a linear array of snapshots (say up to 10,000 snapshots)?

Lots of things. The array will start to consume quite a bit of contiguous space as it gets larger which means it needs to be relocated.

If you double the space each time, it amortizes out.

A snapshot seems to be around 40 bytes. So 10K snapshots = 400KB, hardly a huge amount (sans pointed-to data which doesn't need to move).

Deleting a snapshot is a far more expensive operation than it needs to be.


Move the last snapshot into the deleted entry?

--
error compiling committee.c: too many arguments to function




reply via email to

[Prev in Thread] Current Thread [Next in Thread]