[linux-lvm] Why is the performance of my lvmthin snapshot so poor

Zhiyong Ye yezhiyong at bytedance.com
Mon Jun 13 08:49:10 UTC 2022

Hi all,

I am new to lvmthin. When I created snapshots using lvmthin, the write 
performance of the original lvm was poor.

After I create thin lv with zeroing disabled, I first write the whole 
volume with fio, then create snapshot, and finally test the write 
performance of this volume with fio again. The performance after 
creating a snapshot is very poor, only 10% of the thick lv, and also 
much worse than the performance of the first write of thin lv. The 
performance data for random writes in my environment fio is as follows:
case                    iops
thick lv                63043
thin lv                 42130
snapshotted thin lv     5245

It is mentioned in the lvmthin main page under "Chunk size" that the 
size of chunksize has an impact on snapshot performance. So I tested the 
write performance after creating snapshots with different chunksize. The 
data is shown below:
chunksize               iops
64k                     5245
256k                    2115
1024k                   509

The performance degradation after snapshotting is expected as writing to 
a snapshotted lv involving reading the original data, writing it 
elsewhere and then writing new data into the original chunk. But the 
performance loss was so much more than I expected. Is there any way to 
improve performance after creating a snapshot? Can I ask for your help?


Zhiyong Ye

More information about the linux-lvm mailing list