Re: [PATCH v2 3/4] kvm: Introduce a dirty rate calculation method based on dirty ring

2022-04-02 Thread Chongyun Wu
on 4/2/2022 3:28 PM, Hyman Huang wrote: 在 2022/3/28 9:32, wuc...@chinatelecom.cn 写道: From: Chongyun Wu A new structure KVMDirtyRingDirtyCounter is introduced in KVMDirtyRingReaper to record the number of dirty pages within a period of time. When kvm_dirty_ring_mark_page collects dirty

Re: [PATCH v2 1/4] kvm: Dynamically adjust the rate of dirty ring reaper thread

2022-04-02 Thread Chongyun Wu
on 4/2/2022 3:04 PM, Hyman Huang wrote: 在 2022/3/28 9:32, wuc...@chinatelecom.cn 写道: From: Chongyun Wu Dynamically adjust the dirty ring collection thread to reduce the occurrence of ring full, thereby reducing the impact on customers, improving the efficiency of dirty page collection, and

Re: [PATCH v2 0/4] Dirty ring and auto converge optimization

2022-04-01 Thread Chongyun Wu
Thanks for review. On 4/1/2022 9:13 PM, Peter Xu wrote: Chongyun, On Mon, Mar 28, 2022 at 09:32:10AM +0800, wuc...@chinatelecom.cn wrote: From: Chongyun Wu v2: -patch 1: remove patch_1 v1: -rebase to qemu/master Overview This series of patches is to optimize the performance

Re: [PATCH v1 1/5] kvm,memory: Optimize dirty page collection for dirty ring

2022-03-23 Thread Chongyun Wu
Thank you very much for your review comments. on 3/23/2022 12:59 PM, Hyman Huang wrote: 在 2022/3/23 11:18, wuc...@chinatelecom.cn 写道: From: Chongyun Wu When log_sync_global of dirty ring is called, it will collect dirty pages on all cpus, including all dirty pages on memslot, so when

[PATCH 2/5] kvm: Dynamically adjust the rate of dirty ring reaper thread

2022-03-20 Thread Chongyun Wu
ring method. For detailed test data, please refer to the follow-up series of patches. Signed-off-by: Chongyun Wu --- accel/kvm/kvm-all.c | 149 ++-- 1 file changed, 144 insertions(+), 5 deletions(-) diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-

[PATCH 4/5] kvm: Introduce a dirty rate calculation method based on dirty ring

2022-03-20 Thread Chongyun Wu
. This dirty pages rate is mainly used as the subsequent autoconverge calculation speed limit throttle. Signed-off-by: Chongyun Wu --- accel/kvm/kvm-all.c | 64 +++- include/sysemu/kvm.h | 2 ++ 2 files changed, 65 insertions(+), 1 deletion(-) diff

[PATCH 3/5] kvm: Dirty ring autoconverge optmization for kvm_cpu_synchronize_kick_all

2022-03-20 Thread Chongyun Wu
before stopping the VM. This will significantly improve the efficiency of dirty page queries under high pressure. Signed-off-by: Chongyun Wu --- accel/kvm/kvm-all.c | 23 +++ include/sysemu/cpus.h | 1 + migration/migration.c | 12 softmmu/cpus.c| 18

[PATCH 1/5] kvm, memory: Optimize dirty page collection for dirty ring

2022-03-20 Thread Chongyun Wu
called once, which is meaningless and time-consuming. So only need to call log_sync_global once in memory_region_sync_dirty_bitmap. Signed-off-by: Chongyun Wu --- softmmu/memory.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/softmmu/memory.c b/softmmu/memory.c index 678dc62..30d7281

[PATCH 0/5] KVM: Dirty ring and auto converge optimization

2022-03-20 Thread Chongyun Wu
than that of the bitmap mode and the unoptimized dirty ring mode. Therefore, the optimized ditry ring can better reduce the impact on guests accessing memory resources during the migration process. Please review, thanks. Chongyun Wu (5): kvm,memory: Optimize dirty page collection for

[PATCH 5/5] migration: Calculate the appropriate throttle for autoconverge

2022-03-20 Thread Chongyun Wu
unoptimized dirty ring mode. Therefore, the optimized ditry ring can better reduce the impact on guests accessing memory resources during the migration process. Signed-off-by: Chongyun Wu --- accel/kvm/kvm-all.c | 7 -- migration/migration.c | 1 + migration/migration.h | 2 ++ migration