[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-ia64-devel] [PATCH] unify vtlb and vhpt


  • To: "Kouya Shimura" <kouya@xxxxxxxxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Dong, Eddie" <eddie.dong@xxxxxxxxx>
  • Date: Fri, 29 Feb 2008 01:14:40 +0800
  • Delivery-date: Thu, 28 Feb 2008 09:18:18 -0800
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: Ach54+5eKSVn/3L4TgCWsTwZmLBCJwARcHdQ
  • Thread-topic: [Xen-ia64-devel] [PATCH] unify vtlb and vhpt

Kouya Shimura wrote:
> Hi,
> 
> Currently a HVM domain has vtlb and vhpt individually.
> This patch unifies them. A vtlb entry is recorded in
> vhpt collision chain area.

Mmmm, I am not sure if it is correct in theory. If we put
vTLB in VHPT, which means hash/tag can be used to
uniquely identify a vTLB. This require (original design of) VHPT HW
to rely on region size. If the region size changed, the whole
VHPT need to be purged (at least for that region), other wise
a VHPT entry could be interpreted as different translation.

That means a region size change need to purge vTR in VHPT
table. Do we still need additional data structure to keep those
vTR?

Also if regions size is for example 32K, and we have vTC1 & vTC2
whose va is within 32K page (offset 0 & 16K), but size is only 16KB. 
Putting them in VHPT makes those 2 entries have same hash/tag
since rid/vpn is same. Can this be handled?

> 
> - improve flexibility. currently vtlb size is fixed but some
>   applications like ie32el consume much vtlb.
> - utilize vhpt collision chain area. it looks sparse.
> - reduce TLB miss for access to a vtlb entry. since vhpt is
>   mapped on a TR.
> - speedup ptc.e emulation slightly.
> 
> On the other hand, there would be a slight overhead in
> searching a TLB entry.
> In my testing, any performance degradation can't be seen.
> 
Thanks, eddie

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.