Dear XEN expert:
For the last question, we try the follow steps:
1)
remove the lock acquire_lock in xl_cmdimpl.c, then we find the bottleneck is the IO
2)
we move the all the 40 win7 snapshots to the ramdisk(total 40G, 1G per snapshot), then we find when we restore all 40 snapshots at same time , the
new bottleneck is the xenstored process, the xenstored process is work with 1 thread, and the cpu which run the thread is always 100%
3)
we start the xenstored process with ‘-I’ argument, xenstored process is still very busy.
So , we have 2 questions:
1.
is there some way to improve the xenstored process performance?
2.
We also try the virsh tool to restore several xen at same time ,we fount the virsh can restore 40+ snapshot(1G per snapshot) at same time, the performance
is good when snapshot is all in ramdisk. But we can’t let all the snapshot is always in ramdisk for it is too big. Is there some way to reduce these virsh snapshots space?(these snapshot is same: same OS, same config, but need with different IP address)
Would you please offer us some feedback? Thanks.
By the way, can we talk with Chinese if possible?
发件人: HUANG SHENGQIANG
发送时间: 2017年11月6日 18:32
收件人: Chenjia (C) <chenjia09@xxxxxxxxxx>
主题: FW: Re: [Xen-devel] Help:Can xen restore several snapshots more faster at same time?
Cc:xen-devel@xxxxxxxxxxxxxxxxxxxx,Wangjianbing,Wei Liu,
Subject:Re: [Xen-devel] Help:Can xen restore several snapshots more faster at same time?
On Mon, Nov 06, 2017 at 04:38:51AM +0000, HUANG SHENGQIANG wrote:
> Dear XEN expert,
>
> I find a blocker issue in my project. Would you please offer us some feedback?
>
> The description from my development team:
> we need restore as much as xen snapshot at same times, but we found
‘xl restore’ command is work linearly, if we want to restore a new xen snapshot, we need to wait for the previous snapshot finish it’s work. We try to debug the xl source ,we found the follow information:
> [cid:image001.png@01D356F6.B8EE87E0]
>
Please don't send pictures.
> When an snapshot is being restore, we can see another process is blocked. We trying to delete the acquire_lock from the source code , then we see all the snapshots are being restore at same time, but restore is still very slow, one snapshot needs about 25
seconds to finish restore(our environment is cpu E52620, 256G memory, SSD hard disk. The snapshot is Win7 OS with 2G memory).
>
There is a lock in xl as you can see in the stack trace.
> So , does xen have the way to restore more faster when several snapshot is restore at same time? Why KVM can restore several snapshot fast at same time? (We try the same experiment in KVM, we got we can restore about 50+ snapshot in 20S. )
>
Part of the toolstack needs to be reworked. You can start by removing
the lock in xl to see what breaks.