Stuart D. Gathman schrieb:
On Mon, 3 Sep 2007, Tomasz Chmielewski wrote:
Again, replying to myself, as no one on this list seem to have a clue
about problems with LVM snapshots... I added RAM, and was able to boot
again.
I may have an answer after all. I suspect that the chunksize parameter
to lvcreate -s will affect memory use. A larger chunksize should use
less memory.
So, as a rule of thumb, we can say that for each *used* GB of snapshot,
~3 MB of RAM is needed.
On my snapshots on Centos-5, the chunksize defaults to 8k. With your
observation of 3MB per Gig of snapshot, that comes to 24 bytes per chunk.
Quite reasonable. If you make your chunksize 512K (the maximum supported),
memory use should change to 48K per Gig.
lvdisplay will show the chunksize for a snapshot.
Indeed, it was 8 kB.
What is the meaning of the chunksize in snapshots?
With 512 kB chunksize, I guess the snapshot will fill faster than with 8
KB chunksize, given that the same amount of data changes?
Here is a quick test that shows it.
I created two 20 GB snapshots of a 20GB volume, one with 8kB, and the
other with 512 kB chunksize.
Then, I created a 50 MB file on the original volume (out of /dev/zero):
build1 san1 owi-ao 20.00G
build1-512 san1 swi-a- 20.00G build1 0.09
build1-8 san1 swi-a- 20.00G build1 0.08
Copying /bin, /boot and /lib (71 MB in total) into a new directory makes
that difference bigger:
build1 san1 owi-ao 20.00G
build1-512 san1 swi-a- 20.00G build1 0.76
build1-8 san1 swi-a- 20.00G build1 0.62
Copying a 1.2 GB /usr into a new directory shows this:
build1-512 san1 swi-a- 20.00G build1 7.40
build1-8 san1 swi-a- 20.00G build1 7.18
And finally, create 1000000 empty files:
build1 san1 owi-ao 20.00G
build1-512 san1 swi-a- 20.00G build1 8.22
build1-8 san1 swi-a- 20.00G build1 7.91
The difference is not that big, usually it should be below 5%.
--
Tomasz Chmielewski
http://wpkg.org
_______________________________________________
linux-lvm mailing list
linux-lvm@redhat.com
https://www.redhat.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/