WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] x86: introduce specialized clear_page()

To: Jan Beulich <jbeulich@xxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] x86: introduce specialized clear_page()
From: Keir Fraser <keir@xxxxxxxxxxxxx>
Date: Wed, 20 Jun 2007 16:16:00 +0100
Delivery-date: Wed, 20 Jun 2007 08:14:01 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <4677C925.76E4.0078.0@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcezTeifJw/x2R9BEdyiqAAX8io7RQ==
Thread-topic: [Xen-devel] [PATCH] x86: introduce specialized clear_page()
User-agent: Microsoft-Entourage/11.3.3.061214
On 19/6/07 11:16, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

> While the patch also adds an SSE version, this is is currently orphaned
> as I am not certain about the benefit of special casing idle VCPUs in
> a few places (during context switching), so that at least in that
> context using %xmmN registers would be possible without crashing and/or
> corrupting guest state. The benefit of adding such support could be to
> reduce scheduling latency when a VCPU is to transition out of idle, but
> is busy doing page cleaning.

I measure no benefit from the XMM version (nor from upgrading the SSE2
version on x86/64 to clear from %rax instead of %eax). I guess this is
because the move is non-temporal and it's actually quite easy to max the
memory bandwidth.

So I stripped out the xmm version (it can't work anyway without some
kernel_fpu_begin/end kind of mechanism) and made the sse2 version common
across i386 and x86_64 since that was easily done and increases code
sharing.

 -- Keir


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