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] Re: Even faster page copy for Xen?

To: Jan Beulich <JBeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] Re: Even faster page copy for Xen?
From: Dulloor <dulloor@xxxxxxxxx>
Date: Mon, 9 Aug 2010 10:57:00 -0700
Cc: Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Delivery-date: Mon, 09 Aug 2010 10:58:09 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=8nRNJxerWvtv6KsdqOWv5I4XgyENTbRoiIhCux+x7s0=; b=fPjeO3T7HPvVLhKkkE8EG3PIsI/fV6zz/OYZCF6Nerh9fjYvEqUojtZG/XwWOjqdYx Dwe8NSeNP//U68zo0pvLq7RCPsbzGLeGNTHAoWsUdqwQblDgmU2dw82K5jMntIZgifiT KoKAT2dXvkq7sj1D/cO1/+a9OyIgC3AUW2d28=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=ZNwGLtNm4CBempWqCHU5ELBq85G1R/gOBPJpW1mtQ4uLLch0J25rBAl43KloS93TWU RP9ErjBag6AzEFDBGzCMTDiHL7Cb0fMlsnouWGWZBBc9c7Bq2VqOV36zPTPOtyCTY1vK Ex55RfSmPj3qwbYRQhKIL33veQXQi+LXX7Jy0=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <AANLkTin-d=PPGKiREdH+sEoDe9hqCzKyAz7AzDosdprV@xxxxxxxxxxxxxx>
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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <b39a30eb-01ee-46e4-83c4-2e1b6116929e@default> <4C5BDC79020000780000E9AB@xxxxxxxxxxxxxxxxxx> <AANLkTin-d=PPGKiREdH+sEoDe9hqCzKyAz7AzDosdprV@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On Mon, Aug 9, 2010 at 10:47 AM, Dulloor <dulloor@xxxxxxxxx> wrote:
> On Fri, Aug 6, 2010 at 12:57 AM, Jan Beulich <JBeulich@xxxxxxxxxx> wrote:
>>>>> On 15.07.10 at 20:15, Dan Magenheimer <dan.magenheimer@xxxxxxxxxx> wrote:
>>> Hi Jan, Keir --
>>>
>>> My x86 assembly skills are much too poor to carefully evaluate
>>> and, if of value, implement this in Xen but given your previous
>>> interest, such as:
>>>
>>> http://xenbits.xensource.com/xen-unstable.hg?rev/8de4b4e9a435
>>>
>>> the following might be worth looking at.
>>>
>>> Intel has just posted memcpy improvements for glibc for recent
>>> popular Intel processor families here:
>>>
>>> http://article.gmane.org/gmane.comp.lib.glibc.alpha/15278
>>>
>>> The preface to the above patch looks very enticing...
>>
>> I'm not sure how much of this applies to the much more specific
>> case of copying pages... Additionally, I don't think trying to
>> use XMM registers in Xen would be a good idea.

> Why would you say using xmm/sse in Xen is a bad idea ? We already have a
> copy_page_sse2 (in copy_page.S) in our code base and available (by default)
> for x86_64. Is it a bad idea to use that ?

Never mind about copy_page_sse2 ! That function name is misleading.
But, still ... I need a copy_page routine and was planning to use sse.
Is that not fine ?

>
>>
>>> Semi-related, I wonder if you know, if there were a
>>> "copy_page_from_other_node()" to be used if the
>>> caller is fairly sure that the page is being copied
>>> between nodes, could this be made significantly faster
>>> than a normal copy_page()?
>>
>> I would think that this should mostly be taken care of by
>> using non-temporal stores (non-temporal loads unfortunately
>> aren't available without using XMM registers). The only other
>> meaningful tuning one could do would be to increase the
>> prefetch distances and grow the distance between loads and
>> stores. The latter would require the use of more registers
>> and hence have other drawbacks.
>>
>> Jan
>>
>>
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>> http://lists.xensource.com/xen-devel
>>
>

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