Dear QEMU Development Team,
It is my honor to contact with you. I am a postgraduate student from University of Hong Kong. Currently I am working on a project related to QEMU MicroCheckpointing and I have encountered a performance issue during checkpoint pause & resume. Please kindly refer to migration/checkpoint.c file, in function capture_checkpoint, I proceeded a test to see the time consumption between vm_stop_force_state and vm_start. I found out that even if the system is idle, there are still 12-20ms latency recorded ( mem=2G, vCPU=4 ). Moreover, latency will be increased while more cpus equipped by my virtual machine. I have done some research on that and I realized that it is related to the Memory Barrier in KVM kernel. Each cpu will proceed a smp_wmb() request during pause & resume and it takes about 3-5ms to finish the request ( mem=2G, vCPU=4 ). Therefore, I would like to ask 3 questions regarding on the above issue: 1. What is your consideration with calling smp_wmb() in checkpoint period; 2. Is it any other solution to minimize the latency to improve the performance in checkpoint period; 3. Is smp_wmb() able to be safely disabled during the checkpoint period Really appreciate your help with my problems and hope to receive your feedback soon. Thanks again for your contribution to QEMU and it is such a masterpiece. Thanks and best regards, Niko Jiasheng Feng University of Hong Kong -- *Niko Jiasheng * *Feng **Computer Science(General Stream), Faculty of Engineering, The University of Hong Kong* Contact: (852)97908620 Address: Pokfulam Road, The University of Hong Kong Email: nikof...@hku.hk / niko_jiash...@163.com