[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Heavy memory_region_get_dirty() -- Re: [PATCH 0/1 v2] K
From: |
Takuya Yoshikawa |
Subject: |
Re: [Qemu-devel] Heavy memory_region_get_dirty() -- Re: [PATCH 0/1 v2] KVM: Alleviate mmu_lock contention during dirty logging |
Date: |
Wed, 2 May 2012 23:20:50 +0900 |
On Wed, 02 May 2012 14:33:55 +0300
Avi Kivity <address@hidden> wrote:
> > =============================
> > perf top -t ${QEMU_TID}
> > =============================
> > 51.52% qemu-system-x86_64 [.] memory_region_get_dirty
> > 16.73% qemu-system-x86_64 [.] ram_save_remaining
> >
>
> memory_region_get_dirty() is called from ram_save_remaining(). Looks
> like quadratic behaviour here: we send a few pages in
> ram_save_remaining(), then walk the entire dirty bitmap to calculate
> expected_time().
>
> We should probably calculate expected_time once per iteration.
There seems to be many unnecessary/repeated calculations.
Not restricted to this expected_time one.
Takuya