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

Re: [Xen-devel] [PATCH] x86: add SSE-based copy_page()



That should indeed do the job.

 -- Keir

On 14/11/08 14:10, "Dan Magenheimer" <dan.magenheimer@xxxxxxxxxx> wrote:

> Thanks Dexuan!  I don't want to flush the TLB (which
> wbinvd does) so it looks like the way to flush cache
> on a page in Xen is:
> 
> #include <xen/flushtlb.h>
> flush_area_local(va,FLUSH_CACHE|FLUSH_ORDER(0))
> 
> 
>> -----Original Message-----
>> From: Cui, Dexuan [mailto:dexuan.cui@xxxxxxxxx]
>> Sent: Thursday, November 13, 2008 8:08 PM
>> To: Dan Magenheimer; Jan Beulich
>> Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
>> Subject: RE: [Xen-devel] [PATCH] x86: add SSE-based copy_page()
>> 
>> 
>> Hi Dan,
>> clflush(flush a cache line; you may need a loop to flush a
>> page.) or wbinvd(flush all the caches) should be what you
>> need to flush caches on x86.
>> 
>> Thanks,
>> -- Dexuan
>> 
>> 
>> -----Original Message-----
>> From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>> [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of
>> Dan Magenheimer
>> Sent: 2008年11月14日 7:42
>> To: Jan Beulich
>> Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
>> Subject: RE: [Xen-devel] [PATCH] x86: add SSE-based copy_page()
>> 
>>> This very much depends on whether the page(s) are in any caches - in
>>> the general case (e.g. when dealing with large sets of data, or data
>>> just read from disk), you'd expect both pages (source and
>> destination)
>>> not to be in any cache. This is where using the streaming
>> instructions
>>> helps.
>>> 
>>> However, when dealing with a small set of pages (or even
>> just a single
>>> source/destination pair), you'd easily run entirely on L1 or
>>> L2 data, which
>>> certainly performs better using the non-streaming instructions.
>> 
>> Is there a way to force-flush-cache on a page full of data?  (I knew
>> how to do this once on ia64...)  I can easily measure warm-start but
>> am not sure how to measure cold-start without some kind of flush.
>> 
>> Thanks,
>> Dan
>> 
>> _______________________________________________
>> 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



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


 


Rackspace

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