[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FEC96EB.1050307@redhat.com>
Date: Thu, 28 Jun 2012 20:39:55 +0300
From: Avi Kivity <avi@...hat.com>
To: Takuya Yoshikawa <yoshikawa.takuya@....ntt.co.jp>
CC: Xiao Guangrong <xiaoguangrong@...ux.vnet.ibm.com>,
mtosatti@...hat.com, agraf@...e.de, paulus@...ba.org,
aarcange@...hat.com, kvm@...r.kernel.org, kvm-ppc@...r.kernel.org,
linux-kernel@...r.kernel.org, takuya.yoshikawa@...il.com
Subject: Re: [PATCH 5/6] KVM: Separate rmap_pde from kvm_lpage_info->write_count
On 06/28/2012 06:45 AM, Takuya Yoshikawa wrote:
> On Thu, 28 Jun 2012 11:12:51 +0800
> Xiao Guangrong <xiaoguangrong@...ux.vnet.ibm.com> wrote:
>
>> > struct kvm_arch_memory_slot {
>> > + unsigned long *rmap_pde[KVM_NR_PAGE_SIZES - 1];
>> > struct kvm_lpage_info *lpage_info[KVM_NR_PAGE_SIZES - 1];
>> > };
>> >
>>
>> It looks little complex than before - need manage more alloc-ed/freed buffers.
>
> Actually I want to integrate rmap and rmap_pde in the future:
>
> rmap[KVM_NR_PAGE_SIZES]
That's a good direction.
>
> For this we need to modify some unrelated ppc code, so I just
> avoided the integration in this series.
>
> Note: write_count: 4 bytes, rmap_pde: 8 bytes. So we are wasting
> extra paddings by packing them into lpage_info.
The wastage is quite low since it's just 4 bytes per 2MB.
>
>> Why not just introduce a function to get the next rmap? Something like this:
>
> I want to eliminate this kind of overheads.
I don't think the overhead is significant. rmap walk speed is largely a
function of cache misses IMO, and we may even be adding cache misses by
splitting lpage_info.
But I still think it's the right thing since it simplifies the code.
Maybe we should add a prefetch() on write_count do mitigate the
overhead, if it starts showing up in profiles.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists